使用Liquid,您可以嵌套布局。例如,my site's default layout建立在base layout之上。
ERB这可能吗?如果是这样,怎么样?
我问,因为我正在将GitHub Pages网站迁移到Sinatra,以便我可以原生处理表单(不是Wufoo或Google Forms)。< / p>
答案 0 :(得分:2)
试试这个:
创建一个名为layout.haml的文件(或erb或模板所在的文件),并将其放在views文件夹中。这是你的网站布局,它看起来像这样(我正在使用haml):
%html
%head
%link(rel="stylesheet" type="text/css" href="style.css")
%body
%div.outer
%div.inner
= yield
神奇的部分是=yield
这就是Sinatra将渲染您在路线中调用的任何模板的地方。 =告诉你的模板需要ruby代码。
例如,如果您的路线是
get '/' do
haml :index
end
然后将插入/views/index.haml中的模板。如果您告诉模板覆盖/views/layout.haml上的模板,您也可以使用自定义布局。
希望这会有所帮助。