需要传给 views 的参数有很多,一多就会出现一些高度重复的语句,例如 @site_title = SiteConfig.where(:name => 'site_title')[0].value @site_description = SiteConfig.where(:name => 'site_description')[0].value @site_footer = SiteConfig.where(:name => 'site_footer')[0].value 这些参数对于所有页面都是一致的,但是对每个路由请求都要写一遍,有没有办法简化这些代码?我能想到的是封进一个方法,但是在 app.rb 里面写方法应该是不太对的吧?
MVC 模式里面应该 Views 是不处理任何逻辑的,但是我看 robbin 的博客源码,他的 views 里有很多功能性的代码,有的 controllers 只是读取了数据就整个传给 views,这样做是规范的吗? robbin 的 controllers 都十分简洁,我的则都是长长一串。比如生成一个文章列表,我的做法是对每一篇文章都调用一次列表项的模板,加起来形成一个列表,这个列表再作为页面模板的内容,调用页面模板显示,这些都是 app.rb 完成的,而 robbin 只是获取了一组 blog 文章,显示的处理是 views 完成的。
我想问问这些问题规范的处理是什么?谢谢