Mam następujący model danych w moich Rails 2.3 aplikacjaSzyny has_one: through. Budynek związany obiekt
class PortraitSubject
has_many :portraits
has_one :primary_portrait, :through => :portraits, :source => :asset, :conditions => ['portraits.primary = ?', true]
has_many :supplementary_portraits, :through => :portraits, :source => :asset, :conditions => ['portraits.primary = ?', false]
...
end
class Portrait
belongs_to :portrait_subject
belongs_to :asset
...
end
Chcę zbudować powiązane modele proxy przy użyciu Rails, ale staramy się budować primary_portrait
niepowodzeniem z wyjątek. To znaczy.
# This works
subject = PortraitSubject.new
subject.supplementary_portraits.build
subject.save
# This doesn't
subject = PortraitSubject.new
subject.build_primary_portrait
# => NoMethodError: undefined method `build_primary_portrait' for #<PortraitSubject:0x007ff16fe38948>
Nie jestem pewien, co robię źle. Przeglądając przewodnik po Railsach, wygląda na to, że powinno to być możliwe z relacją has_one
. Każda pomoc będzie wielce ceniona.
jesteś pewien, że można budować ': skojarzenia through'? Jeśli tak, proszę podać link – Zippie