3

使用Liquid,您可以嵌套布局。例如,我网站的 默认布局建立在基本布局之上。

这可能与ERB吗?如果是这样,怎么做?

我之所以问,是因为我正在将GitHub Pages站点迁移到Sinatra,以便我可以本地处理表单(而不是使用WufooGoogle Forms)。

4

1 回答 1

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 中的那个,您也可以使用自定义布局。

希望这可以帮助。

于 2011-03-22T14:51:03.650 回答