原创作者: hideto
阅读:2215次
评论:1条
更新时间:2011-05-26
如果我们想根据模板页面更改局部layout,使用content_for即可。
content_for允许模板页面代码放到layout中的任何位置。
比如我们的Rails程序不同的页面有不同的css样式,我们可以在layout里留出位置:
我们用yield :head来给模板页面某段代码留个"座位",再看页面:
content_for :head里面的代码将填充layout里的yield :head。
layout+content_for,很灵活吧。
content_for允许模板页面代码放到layout中的任何位置。
比如我们的Rails程序不同的页面有不同的css样式,我们可以在layout里留出位置:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title>Todo List</title> <%= stylesheet_link_tag 'application' %> <%= yield :head %> </head> <body> <div id="container"> <h1>Todo List</h1> <%= yield %> </div> </body> </html>
我们用yield :head来给模板页面某段代码留个"座位",再看页面:
<% content_for :head do %> <%= stylesheet_link_tag 'projects' %> <% end %> <h2>Projects</h2> <ul> <% for project in @projects %> <li><%= project.name %></li> <% end %>
content_for :head里面的代码将填充layout里的yield :head。
layout+content_for,很灵活吧。
1 楼 mingliangfeng 2012-05-11 14:45