【问题标题】:How to not include layout.haml in sinatra app如何在 sinatra 应用程序中不包含 layout.haml
【发布时间】:2016-09-27 00:02:38
【问题描述】:

我有一个使用 haml 的 ruby​​ sinatra 应用程序。我使用 layout.haml 作为所有页面的通用菜单。假设我有 login.haml、main.haml 和 reports.haml。我只想将 layout.haml 用于 login.haml 和 main.haml。如何从reports.haml 中排除layout.haml?谢谢

【问题讨论】:

  • 请用更多信息改进问题

标签: ruby layout sinatra


【解决方案1】:

两种(有点)方式:

全球

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 =&gt; false 的全局声明。我冒昧地为这个功能打开了issue,因为它看起来很合理(希望你不会介意)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-20
    • 2011-12-22
    • 1970-01-01
    • 1970-01-01
    • 2013-01-03
    • 2012-12-06
    • 2010-12-22
    • 1970-01-01
    相关资源
    最近更新 更多