У меня есть три модели:
- Компания;
- Инвестор;
- Брокер.
в реальном мире каждый инвестор можетинвестировать во многие компании, но в некоторые он / она может инвестировать с помощью брокера.Я сделал это через объединенную таблицу.
def change
create_join_table :companies, :investors do |t|
t.references :broker, index: true, optional: true
end
end
class Company < ApplicationRecord
has_and_belongs_to_many :investors
end
class Investor < ApplicationRecord
has_and_belongs_to_many :companies
end
class Broker < < ApplicationRecord
has_many :companies
end
Как мне настроить мои модели / миграции, чтобы иметь следующую информацию:
Company.first.investors.first.broker
брокер не принадлежит инвестору, в каждой компании / инвестореПара может быть разным брокером.