2
我有一些麻煩與多級繼承:Doctrine2多層次繼承
第一級:
/**
* @ORM\Table(name="request")
* @ORM\Entity
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="discr", type="string")
* @ORM\DiscriminatorMap({"base" = "Base",
* "delete" = "Delete",
* "contact" = "Contact"})
*/
class Requete
{
第二級:
/**
* @ORM\Table(name="base")
* @ORM\Entity
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="discr", type="string")
* @ORM\DiscriminatorMap({"base" = "Base",
* "prosante" = "ProSante",
* "pharmacie" = "Pharmacie",
* "hopital" = "Hopital"})
*/
abstract class Base extends Requete
{
第三級:
/**
* @ORM\Table(name="prosante")
* @ORM\Entity
*/
class ProSante extends Base
{
當我t時記錄日誌ry插入一個新的「ProSante」:
INSERT INTO request (discr) VALUES (?) ({"1":"prosante"})
INSERT INTO prosante (id) VALUES (?) ({"1"})
它應該「插入基地...」之前,但它沒有。 字段discr只在請求表中,不在基表中,我不知道爲什麼。
如果有人有想法。
在此先感謝,
好吧,這很奇怪,我將刪除我的模式並重新創建它們。 – nlaille 2012-07-10 07:53:33
好的,問題解決了,當我更新我的架構原則並沒有改變prosante外鍵。我刪除了我的數據庫並重新創建它。非常感謝。 – nlaille 2012-07-10 08:05:35