[RUBY] Vorhandene Datensätze verschwinden beim Erstellen des has_one-Modells (Rails).

class Parent
    has_one :child
end
class Child
    belongs_to :parent
end

Verwenden Sie in dieser Situation "parent.build_child", um "child" aus dem vorhandenen "parent" zu erstellen.

Normalerweise dachte ich, dass der DB-Datensatz nicht nur durch Erstellen neu geschrieben werden würde, aber wenn Sie diesen Build ausführen, wenn "parent.child" bereits vorhanden ist, wird das ursprüngliche "Kind" sein Beachten Sie, dass es nach dem LÖSCHEN erstellt wird

Nachtrag

Erstens glaube ich nicht, dass Build eine Aktion darstellt, die ausgeführt werden soll, wenn eine vorhandene Zuordnung vorhanden ist. Wenn jedoch die Datenbank direkt neu geschrieben wird und das untergeordnete Modell bereits erstellt wurde, erfolgt keine Zerstörung. Es ist ein Phänomen, dass ich bemerkt habe, dass die Aufzeichnung verschwunden ist

Weil es eine Geschichte war, die nicht erwischt wurde, selbst wenn ich gegoogelt habe

Referenz

Recommended Posts

Vorhandene Datensätze verschwinden beim Erstellen des has_one-Modells (Rails).
[Rails] Vermeiden Sie das SELECT, das beim Erstellen eines Modells mit Gehört_zu Definiert ausgegeben wird!
Notizen von Personen, die beim Versuch, ein Rails-Projekt zu erstellen, gestolpert sind
Eine Sammlung von Methoden, die häufig beim Bearbeiten der Zeit mit TimeWithZone of Rails verwendet werden
[Rails 6.0] Informationen zum Batch-Speichern mehrerer Datensätze
Rails Grundlagen zum Erstellen einer neuen Anwendung
Ein einfaches Beispiel für das MVC-Modell