Przepraszam, jeśli jest to pytanie typu noob, ale staram się wyjaśnić moje zdanie na ten temat. Mam model, który może EITHER należą do jednego lub innego modelu. Na przykład:Czy model "belongs_to" może być jednym lub więcej niż jednym modelem?
Załóżmy, że mam model Team i mam model Member, a oba te modele mogą mieć jeden BankAccount.
class Team
has_many :members
has_one :bank_account
end
class Member
belongs_to :team
has_one :bank_account
end
class BankAccount
belongs_to :team, :member
end
Dla mnie powyższe ma sens, ale chciałbym wyjaśnić to z bardziej doświadczonymi ludźmi z Railsów? Czy Rails ma jakiś sposób sprawdzenia, jaki model macierzysty ma dany BankAccount, biorąc pod uwagę, że może to być jeden z dwóch modeli? Na przykład, jeśli zadzwoniłem na @ bank_account.member na konto bankowe zespołu, czy wyrzuci to chwiejnie?
Dzięki za pomoc.
Dzięki Damien. Całkiem proste naprawdę :) – aaronrussell
W klasie Członek, musisz dodać: as =>: osób na tym has_many. – ScottJ
Więcej informacji na temat stowarzyszeń polimorficznych można znaleźć na stronie [Poradnik RoR] (http://guides.rubyonrails.org/association_basics.html#polymorphic-association) – cider