我在哪里放置模型扩展方法在Rails 5.1中

时间:2017-10-23 23:06:02

标签: ruby-on-rails

我正在开发一个Rails 5应用程序,并且有多种方法适用于多个模型。

我正考虑将它们放入:

lib/model_extension.rb

然后,在使用这些方法的每个模型中,我都会添加:

include ModelExtension

对于Rails 5.1,你会建议采用不同的方式吗?

2 个答案:

答案 0 :(得分:1)

创建ActiveSupport::Concern并将其放入app/models/concerns。这是Rails 4+ http://api.rubyonrails.org/v5.1/classes/ActiveSupport/Concern.html

以来的传统方法

您不必遵循此约定。有关一些好的讨论,请参阅此问题:How to use concerns in Rails 4

答案 1 :(得分:0)

这是concerns的用途。他们应该进入app/models/concernsrails new为您创建。