2013-08-18 58 views
3

我有一個Sinatra應用程序與多個佈局。我想將它們隔離到自己的子目錄views如何在Sinatra中爲佈局設置自定義目錄?

app.rb 
views/ 
views/layouts/ 
views/layouts/default.haml 
views/layouts/print.haml 
views/layouts/mobile.haml 

這工作,但我已經明確地設置佈局與每個渲染電話:

get '/' do 
    haml :index, {:layout => :'layouts/default'} 
end 

有沒有一種方法來設置全局佈局(例如,模塊中的所有路由),還是告訴Sinatra在默認目錄之外尋找佈局的位置?

回答

9

需要更好的RTFM ...因此,Sinatra本身沒有特定的選項,但是您可以爲每個渲染引擎設置默認佈局,例如, HAML:

configure do 
    set :haml, :layout => :'layouts/default' 
end 
相關問題