Sinatra と ERB テンプレートを使用して Web サイトを構築しています。ERB 内で、ロードされているページの名前にアクセスし、それに応じてレイアウトの小さな部分を変更したいと考えています。
たとえば、私のルートは次のようになります。
get '/' do
erb :index
end
次のようなものが必要です:
<% unless page_is_index %>
<!-- HTML goes here -->
<% end %>
Sinatra では、ルーティングとコントローラーの間に直接的な関係はないため、Rails のようなヘルパーはcurrent_controller
ありません。current_action
あなたができることは、チェックすることですrequest.path
。
必要な変更を行う別のレイアウトを指定できます。他に何もなければ、このレイアウトには、より多くのオプションを備えたメイン レイアウトを含めることができます。
get '/' do
erb :index, :layout => 'index_layout'
end