Rails использует модель в том же пространстве имён для ссылки на принадлежность, как ссылаться на модель извне - PullRequest
0 голосов
/ 30 мая 2018

Я работал над приложением Rails, в настоящее время мы структурируем приложение по модулям.Сейчас у нас есть две отдельные модели для пользователей: 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 класс модели?

1 Ответ

0 голосов
/ 30 мая 2018

Вы можете получить пользовательский класс, используя этот тип, попробуйте это.

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...