我正在研究Rails应用程序,目前我们按模块构建应用程序。现在,我们为用户提供了2个单独的模型:User
和Freight::Customer::User
。
我有一个新模型Freight::Customer::MembershipStatus
如下所示:
class Freight::Customer::MembershipStatus < ActiveRecord::Base
belongs_to :customer, class_name: 'Freight::Customer'
belongs_to :created_by, class_name: 'User'
validates :from, presence: true
validates :to, presence: true
validates :customer, presence: true
validates :status, presence: true
end
在这种情况下,created_by
是User
的引用。但是当代码运行membership_status.created_by
时,rails会尝试查找Freight::Customer::User
,我认为是因为Rails首先尝试在同一个模块中查找模型。
有没有办法配置此模型以使用外部User
模型类?
答案 0 :(得分:3)
您可以使用此类型获取用户类,请尝试此操作。
class Freight::Customer::MembershipStatus < ActiveRecord::Base
belongs_to :customer, class_name: 'Freight::Customer'
belongs_to :created_by, class_name: '::User'
validates :from, presence: true
validates :to, presence: true
validates :customer, presence: true
validates :status, presence: true
end