控制器助手和关注点之间有什么区别?

时间:2013-09-11 20:50:18

标签: ruby-on-rails

关注会帮助我分享偏见的逻辑吗?我看到Rails 4有控制器的“Concer”文件夹,但它在应用程序生成时是空的。

DHH写了一篇关于关注点的博客(但我认为它们适用于该模型):http://37signals.com/svn/posts/3372-put-chubby-models-on-a-diet-with-concerns

我希望得到一个简洁的例子。

2 个答案:

答案 0 :(得分:23)

简单地说:

助手包含要在视图中使用的方法。

关注的是控制器/模型中包含的模块(取决于它的关注点)等。

它只是一个包含代码的文件夹,如果您愿意,可以放在其他地方。我们使用像关注点这样的花哨术语来获得更多报酬。

答案 1 :(得分:19)

担心的是混合到控制器或模型类中的模块。 DHH的帖子专注于模型,但同样适用于控制器。它有助于减少模型或控制器类的范围,并且可以更轻松地跨多个类重用公共代码。

Helpers是一种简短的面向表示的方法,您可以从视图中调用,也可以偶尔从控制器中调用。