Mi sto semplicemente tuffando in ActiveRecord e non sono riuscito a trovare una risposta alla mia domanda. Se sto aggiornando gli attributi di un oggetto e poi richiamando save() ... ActiveRecord salverà sul DB SOLO quando i nuovi valori sono diversi dai vecchi valori?Informazioni sugli aggiornamenti Simple ActiveRecord nelle guide
Diciamo che faccio qualcosa di simile:
thing_to_update = Thing.find_or_create_by_code(some_code)
if thing_to_update.name != some_name
thing_to_update.update_attribute(:name, some_name)
end
Non voglio fare le chiamate in più per il db se io non devo perché avrò potenzialmente essere necessario aggiornare un sacco di oggetti. Ho provato a leggere i documenti e non menziona nulla sul confronto di nuovi valori con quelli vecchi. Mi sto perdendo qualcosa qui?
Grazie