私は、haml を使用するルビー シナトラ アプリを持っています。すべてのページに共通のメニューには、layout.haml を使用します。login.haml、main.haml、reports.haml があるとします。login.haml と main.haml にのみ layout.haml を使用したい。reports.haml から layout.haml を除外するにはどうすればよいですか? ありがとう
2439 次
1 に答える
8
2つの(そして多少の)方法:
グローバル
class MyApp < Sinatra::Base
set :haml, :layout => false
get '/reports' do
haml :reports
end
end
ブラックリスト登録
レイアウトを必要としないルートの数が少ない場合、これはパターンです。
class MyApp < Sinatra::Base
get '/reports' do
haml :reports, :layout => false
end
end
ホワイトリスト登録
ただし、ファイルを必要としないルートlayout.haml
が多い場合、Sinatra は のグローバル宣言のオーバーライドをサポートしていないようですset :haml, :layout => false
。この機能は十分に合理的であると思われるため、自由に問題を提起しました(気にしないでください)。
于 2013-06-14T06:52:42.420 に答える