Layouts设施
1) 很多页面共享了菜单栏,页面头部,尾部等html元素
2) 很多页面共享了一些html的片段信息如一个list内容
3) 同一个函数出现在多个地方
通过layout以及相关的组件可以避免以上的重复操作。
当Rails响应一个请求,返回一个模板的时候,实际返回两个模块内容:
1) 返回要求的模板,一般以action命名的默认模板
2) 返回Layout模板的内容
Layout模板:
通过以下方式,让默认模板嵌套在layout模板中:
通过在controller中使用layout进行声明就可以重载默认的layout模板的配置
也可以对使用该模板的actions进行限制:
#render(:layout => false) 不适用模板
1) 很多页面共享了菜单栏,页面头部,尾部等html元素
2) 很多页面共享了一些html的片段信息如一个list内容
3) 同一个函数出现在多个地方
通过layout以及相关的组件可以避免以上的重复操作。
当Rails响应一个请求,返回一个模板的时候,实际返回两个模块内容:
1) 返回要求的模板,一般以action命名的默认模板
2) 返回Layout模板的内容
Layout模板:
通过以下方式,让默认模板嵌套在layout模板中:
<%= yield :layout%>
<!--以下两种写法也可以-->
<!--<%=yield%>-->
<!--<%=@content_for_layout%>-->如何定位Layout Files通过在controller中使用layout进行声明就可以重载默认的layout模板的配置
# layout “standard” 使用app/views/layouts下的standard.html.erb模板也可以对使用该模板的actions进行限制:
# layouts “standard”, :except => [:rss,:atom]对于每个action在返回模板的时候也可以指定自己的layout# render (:layout=>”layouts/simple”)#render(:layout => false) 不适用模板
本文介绍Rails应用中如何利用布局(layouts)来减少重复代码,通过在多个页面间共享通用的HTML元素,例如菜单栏、头部和尾部等,提高开发效率。文章还详细解释了如何在控制器和视图中定义及调用不同的布局。

被折叠的 条评论
为什么被折叠?



