I\'m new to Sinatra and I can\'t figure out where to put my application layout.
I\'ve seen the inline method that uses
# app code
__END__
@@lay
If you haven't already, create a folder where your sinatra script lives called...
views/
and put your layout in there, call your layout
layout.haml
or whatever extension (e.g. .erubis
) you'd like to use.
To make every view default to be wrapped in a layout, create a file in views/layout.haml
and your calls to haml :myview
will automatically be wrapped in this layout.
If you want a particular view rendering not to use the layout, use:
get '/' do
# Other pages will use layout.haml, but not the main page
haml :home, :layout => false
end
If you want to use a layout other than the common layout, create another file (for example views/admin_layout.haml
) and then pass this as an option:
get '/admin/create' do
haml :create, :layout => :admin_layout
end