Ich benutze DataMapper mit dem Redis-Adapter in einer Ruby-Bibliothek.DataMapper Redis: Kind von Eltern nicht finden, nur Eltern von Kind
Ich habe diese Klassen definiert:
class Zone
include DataMapper::Resource
property :id, String, :key => true, :unique_index => true, :default => lambda { |x,y| UUID.new.generate }
property :preview_mode, Boolean, :default => false
timestamps :at
has 1, :campaign
end
und
class Campaign
include DataMapper::Resource
property :id, String, :key => true, :unique_index => true, :default => lambda { |x,y| UUID.new.generate }
property :name, String
timestamps :at
belongs_to :zone
has n, :rules
validates_presence_of :name
end
Ich bin in der Lage Campaign.first.zone zu tun, aber nicht Zone.first.campaign.
Ich möchte in der Lage sein, die Lookups in beiden Richtungen zu tun.
Ihr Code scheint hier zu arbeiten. Was ist der Fehler, den Sie bekommen? –
@AdielMittmann - Es gibt keinen Fehler, aber der Code verhält sich nicht so, wie ich es erwarte. Ich möchte in der Lage sein, ein Kind von einem Elternteil sowie ein Elternteil von einem Kind aufzublicken. Momentan arbeiten nur Child-Parent-Lookups mit dieser Konfiguration. – lightyrs
Aber was passiert, wenn Sie etwas wie 'puts Zone.first.campaign.name' machen? Nach dem Erstellen einer Zone und einer Kampagne, in meinem Setup dieses Stück Code tut die Suche wie erwartet :) –