2011-01-06 4 views
0

Ich habe zwei Tabellen, Inventar und, sagen wir, Zeug. Inventar wird verwendet, um Daten zu speichern, die Stuff und anderen Tabellen gemeinsam sind. Die Art und Weise, in der der DBA dies in Aussicht stellte, würde darin bestehen, die Inventory-Tabelle einzufügen und dann die generierte ID zu verwenden, um die Stuff-Tabelle einzufügen.Wie implementiert man nicht explizite 1: 1 Beziehung mit Doctrine?

Wie kann ich dieses Szenario mit Doctrine 2 implementieren? Ich bin versucht, nur eine 1: 1-Beziehung auf dem Modell hinzuzufügen, aber ich bin nicht sicher, ob ich den DBA überzeugen kann, die Datenbank zu ändern.

Antwort

1

Mit der hier beschriebenen Problemumgehung http://www.doctrine-project.org/docs/orm/2.0/en/reference/limitations-and-known-issues.html#foreign-keys-as-identifiers sollten Sie in der Lage sein, das DBA-Schema zum Laufen zu bringen. Mit Version 2.1 von Doctrine (oder dem aktuellen Master) können Sie den neuen Fremdschlüssel als Identifizierungsmerkmal verwenden, um zu funktionieren.

Wenn Sie jedoch keine Sequenzen von Oracle/Postgresql verwenden, müssen Sie die Operationen dafür leeren (persistierendes Parent, Flush, Associate und Persist Kind, Flush)

Verwandte Themen