我正在使用另一个应用程序集成rails应用程序(目前为rails 3,移至5)。 rails应用程序中的用户模型将具有与集成,范围和一系列方法相关的关联。
我想将这些与用户模型文件分开以避免混淆,并将与集成相关的所有关联,范围和方法保存在一个地方,而不是观察用户模型变得混乱只有与用户相关的东西启用集成。
这可能,如果可行,我会使用什么机制?
答案 0 :(得分:2)
您可以使用concerns:
module AdditionalLogic
extend ActiveSupport::Concern
included do
scope :disabled, -> { where(disabled: true) }
belongs_to :user
# etc..
end
# other methods
end
class YourModel < ActiveRecord::Base
include AdditionalLogic
end