Ответ 1
Если вы еще этого не сделали, создайте папку, в которой вызывается ваша синатра script...
views/
и разместите свой макет там, назовите макет
layout.haml
или любое расширение (например, .erubis
), которое вы хотели бы использовать.
Я новичок в Sinatra, и я не могу понять, где разместить мой макет приложения.
Я видел встроенный метод, который использует
# app code
__END__
@@layout
%html
= yield
Но я бы хотел, чтобы макет был в нем собственным .haml
файлом.
Каков должен быть назван файл макета? В какой каталог следует поместить его?
Если вы еще этого не сделали, создайте папку, в которой вызывается ваша синатра script...
views/
и разместите свой макет там, назовите макет
layout.haml
или любое расширение (например, .erubis
), которое вы хотели бы использовать.
Чтобы сделать все представления по умолчанию обернутыми в макет, создайте файл в views/layout.haml
, и ваши вызовы на haml :myview
будут автоматически завернуты в этот макет.
Если вы хотите, чтобы определенный рендеринг вида не использовал макет, используйте:
get '/' do
# Other pages will use layout.haml, but not the main page
haml :home, :layout => false
end
Если вы хотите использовать макет, отличный от общей компоновки, создайте другой файл (например, views/admin_layout.haml
), а затем передайте это как вариант:
get '/admin/create' do
haml :create, :layout => :admin_layout
end