He estado tratando de entender las asociaciones ActiveRecord
, pero he golpeado un poco una pared de ladrillo, y no importa cuánto revise la documentación ActiveRecord
, no puedo resolverlo cómo resolver mi problemaCreando o actualizando una asociación has_one ActiveRecord
Tengo dos clases:
Property -> has_one :contract
Contract -> belongs_to :property
En mi clase de contrato, tengo un método para create_or_update_from_xml
Primera puedo comprobar para asegurarse de que la propiedad en cuestión existe.
property_unique_id = xml_node.css('property_id').text
property = Property.find_by_unique_id(property_unique_id)
next unless property
Y aquí es donde se queda bloqueado, tengo un hash de atributos para el contrato, y lo que yo quiero hacer es algo como:
if property.contract.nil?
# create a new one and populate it with attributes
else
# use the existing one and update it with attributes
Yo sé cómo iba a ir sobre ella si era SQL en bruto, pero no puedo entender el enfoque de ActiveRecord.
Cualquier sugerencia más allá de este bloque de carreteras sería muy apreciada.
Gracias de antemano.
Gracias por eso, las obras perfectamente. –
¿tal vez usar en blanco? – Dan