一个controller只能同时有一个layout
但是在页面布局中,可能有一个application.rhtml是对整个网站的布局,如header footer content
但是所有的控制器如果只使用一个application.rhtml的话,每个控件器要生成的内容又不一样
,比如有点要加载一些不同的JS或者CSS,但是如果每个控件器单独使用的话,感觉很多地方还是重复了
,如如要再写header和footer
所以我想请问一下,看能不能一个控制器使用两个模板
首先有一个自己的控制器模板,生成content,再render application.rhtml模板
这样子的话全局比较好控制,自己控制器生成的内容又可以定制
谢谢
评论
sina2009 2007-05-29   回复
liusong1111 写道
http://www.javaeye.com/topic/84116

想回贴,顺便总结一下,结果写的又臭又长,只好另开贴了,搜索nested layout找到的,有几行代码写的plugin,不是rails直接支持的。
多谢!
liusong1111 2007-05-29   回复
http://www.javaeye.com/topic/84116

想回贴,顺便总结一下,结果写的又臭又长,只好另开贴了,搜索nested layout找到的,有几行代码写的plugin,不是rails直接支持的。
xvridan 2007-05-28   回复
我也遇到这个问题,Rails不能layout嵌套。layout继承体系内向下共享,一但在一个控制器中定义了layout方法,那么中止了layout的共享改用layout申明的layout了。
我解决这个问题,是在共用的layout中使用了partial Templates,当然加上了条件,使得一些控制器不能使用该partial。不过这种方法使代码的可读性下降,不容易共享变量,降低操作性,代码显得破碎和凌乱。
sina2009 2007-05-28   回复
一个控制器好像同明只能有一个layoutk哦
动态判断使用哪一个和在action中声明使用哪一个不算哈
yehs220 2007-05-28   回复
可以有多个layout,google it...
发表评论

该博客是同时发布到论坛的,无法评论在论坛已被锁定的帖子

sina2009
搜索本博客
博客分类
最近加入圈子
存档
最新评论