2011-01-15 9 views
2

Ich habe ein ActiveRecord-Objekt. Es wird mithilfe der verschachtelten Attribute eines übergeordneten Objekts aktualisiert. Das Problem ist, dass es einige Nicht-Datenbankfelder hat, die, wenn sie gesetzt sind, ein Ereignis nach_save auslösen müssen. Das Problem, das ich habe, ist, dass, wenn keine Datenbankattribute aktualisiert werden, die after_save nie ausgelöst wird, aber ich brauche es.Schienen 2.3.8 machen einen aktiven Datensatz schmutzig

ActiveRecord.partial_updates = false ist ein Standard in meiner app. Das Speichern geschieht nie ...

Ich versuchte, die updated_at = DateTime.now zu aktualisieren und es löst keine der Datensatz gespeichert werden. Nur wenn eine der anderen Eigenschaften aktualisiert wird, wird die Speicherung ausgelöst.

Hinweis Rails 2.3.8

+0

Wie geben Sie den after_save Callback an? – polarblau

+0

Ich habe das selbst nicht versucht, aber ist YourModel.partial_updates = false Hilfe wichtig? – jmcnevin

Antwort

1

Grundsätzlich ich manuell erstellt einen Setter für die nicht-Datenbankeigenschaft und aufgerufen id_will_change!, die das ganze Objekt schmutzig gemacht. Das funktioniert für meine Bedürfnisse.

Verwandte Themen