救命!我的application_helper.rb变得笨拙

时间:2011-08-01 02:00:20

标签: ruby-on-rails ruby-on-rails-3 helper

我的application_helper.rb变得越来越大了。在我的辩护中,它只包含HTML生成方法,并且这些方法都不执行任何类型的业务逻辑。这些方法都不是特定于任何页面或控制器,并且大多数方法彼此无关。

这个问题的典型解决方案是什么?吸了吗?创建其他*_helper.rb个文件以吸收部分application_helper方法?

2 个答案:

答案 0 :(得分:5)

通常我们有控制器的帮助器(每个控制器一个帮助器,你是否只在该控制器的模板上使用辅助方法),你也可以根据自己的组织创建帮助器。

如果你有许多与民意调查相关的方法,你可以创建一个PollsHelper并将所有方法放在那里,即使没有一个名为PollsController的控制器。此外,Rails总是加载所有帮助程序并将它们包含在您的视图中,因此您可以随意命名它们(只要它们位于帮助程序文件夹中,并且以 _helper 结尾)。

答案 1 :(得分:3)

通常我会按类型进行整理 - 例如button_and_link_helpers,conditional_helpers等我只是将它们创建为模块并将它们包含在需要它们的控制器中。 这样做的好处是不为每个视图加载未使用的函数负载