我是铁轨上的初学者。在我的应用程序中编写其中一个视图时,我最终得到了大块(~100行)的丑陋代码。它非常通用,因为它主要由一些条件查看特定于视图的常量哈希组成。我想从视图文件中删除这个丑陋的代码块。
放置这段代码的最佳位置是什么?具体来说,辅助模块是否适合这种非通用代码?
答案 0 :(得分:0)
将代码放在app/helpers/application_helper.rb
中,任何使用application
布局呈现的视图都可以访问该代码。
另一种选择是定义一个自定义辅助模块,一个不一定与给定视图或控制器相关联(参见下面链接的视频),以及include
您希望在其中具有该功能的视图/控制器的模块。
Helper模块确实可以用来调用它们,但要小心你如何声明你的方法,你可以在helper模块中定义的内容有限制。
Here是一篇很好的文章,概述了来自 2011年5月的辅助模块
Here是一个概述自定义辅助模块的RailsCast(即自定义为模块,不一定与给定的控制器或视图相关联)。简短,甜蜜,至关重要。