Обратитесь к аналогичным связанным моделям с общим названием - PullRequest
1 голос
/ 15 апреля 2010

У меня есть эти модели:

class Bill < ActiveRecord::Base
  has_many :calls
  has_many :text_messages
end

class Call < ActiveRecord::Base
  belongs_to :bill
end

class TextMessage < ActiveRecord::Base
  belongs_to :bill
end

Теперь, в моем домене, звонки и текстовые сообщения - это "одна и та же вещь" - то есть, обе они являются "счетами". Поэтому я бы хотел, чтобы some_bill.bill_items вернул все звонки и текстовые сообщения, связанные с этим счетом. Какой лучший способ сделать это?

1 Ответ

0 голосов
/ 16 апреля 2010

Вы можете создать новую модель BillItems и вставить ее в цепочку отношений. Затем вы можете получить доступ ко всем пунктам счета коллективно или отдельным звонкам / текстовым сообщениям через сквозные отношения. Другой возможностью было бы изучить наследование одной таблицы .

...