Próbuję uzyskać informacje o skojarzeniach ActiveRecord
, ale uderzyłem nieco w mur i niezależnie od tego, jak bardzo przejrzałem dokumentację ActiveRecord
, nie mogę stwierdzić jak rozwiązać mój problem.Tworzenie lub aktualizowanie asocjacji has_one ActiveRecord
Mam dwie klasy:
Property -> has_one :contract
Contract -> belongs_to :property
w mojej klasie kontraktu, mam metodę create_or_update_from_xml
Najpierw upewnij się, właściwość istnieje w pytanie.
property_unique_id = xml_node.css('property_id').text
property = Property.find_by_unique_id(property_unique_id)
next unless property
I to gdzie ja utknąć, mam hash atrybutów dla umowy, a to, co chcę zrobić, to coś takiego:
if property.contract.nil?
# create a new one and populate it with attributes
else
# use the existing one and update it with attributes
wiem jak bym go o to jeśli był to surowy kod SQL, ale nie mogę się skupić na podejściu ActiveRecord.
Wszelkie sugestie dotyczące tego bloku drogowego będą niezwykle cenne.
Z góry dziękuję.
Dzięki za to, roboty doskonale. –
może użyć pustego? – Dan