2012-01-31 20 views
6

Jaka jest różnica między używaniem szablonów widoku w Railsach jako ".html.haml" i po prostu ".haml"? Na przykład
show.html.haml
vs
show.hamlhtml.haml vs haml in Rails zobacz szablony

Czy istnieją jakieś szczególne zalety przy użyciu jednego nad drugim? A może jednym z nich jest standardowa praktyka? To samo pytanie dotyczy również innych typów szablonów, takich jak ".erb".

Odpowiedz

5

Format ma znaczenie, gdy używasz automatycznych respondentów Rails. Zobacz http://api.rubyonrails.org/classes/ActionController/MimeResponds.html#method-i-respond_with.

Tak na przykład z:

class CarsController < ActionController::Base 
    respond_to :html, :js 

    def index 
    respond_with Car.all 
    end 
end 

Aplikacja odda app/views/cars/index.html.erb i app/views/index.js.erb podczas przeglądania http://localhost:3000/cars i http://localhost:3000/cars.js odpowiednio.

Co więcej, jest to ustalona konwencja w Rails-land, więc warto to zrobić, nawet jeśli nie korzystasz z automatycznych odpowiedzi.

+1

Czy to znaczy, że zamiast używać ".haml" preferowane i standardowe jest używanie ".html.haml"? – Vignesh

+0

Rozumiem, że używanie formatu jawnego może być konieczne w przypadku korzystania z automatycznych odpowiedzi innych niż w formacie HTML. – Vignesh

+0

Tak, preferowanym standardem będzie ".html.haml". – jtrim