2016-11-11 61 views
0

我有一個表格,其中兩個字段必須與Product實體鏈接。但是,學說只識別其中的一個,按照慣例處理整數。Doctrine2 - 與一個實體鏈接的兩個字段

我讀過幾乎類似的問題 Doctrine2 Mapping: 2 fields mapped to one field (ManyToOne) 但是據我所見,我的註釋必須是正確的。

任何想法我做錯了什麼?

產品Product

/** 
    * @var integer 
    * 
    * @ORM\Column(name="id", type="integer") 
    * @ORM\Id 
    * @ORM\GeneratedValue(strategy="NONE") 
    */ 
    private $id; 


    /** 
    * @ORM\Column(name="product_id", type="integer") 
    * @ORM\ManyToOne(targetEntity="Product", inversedBy="productProduct") 
    * @ORM\JoinColumn(name="product_id", referencedColumnName="id") 
    */ 
    private $product; 

    /** 
    * @ORM\Column(name="product_replace_id", type="integer") 
    * @ORM\ManyToOne(targetEntity="Product", inversedBy="productProductReplace") 
    * @ORM\JoinColumn(name="product_replace_id", referencedColumnName="id") 
    */ 
    private $productIdReplace; 

產品

/** 
* @ORM\OneToMany(targetEntity="ProductProduct", mappedBy="product") 
**/ 
private $productProduct; 

/** 
* @ORM\OneToMany(targetEntity="ProductProduct", mappedBy="productIdReplace") 
**/ 
private $productProductReplace; 

回答

0

媽的,問題是下面幾行:

@ORM\Column(name="product_replace_id", type="integer") 

好像是標註爲d提名,覆蓋@JoinColumn之一。我刪除了這兩個實體中的這些行,現在都似乎工作。 希望這個問題可以幫助別人避免這種簡單的錯誤:)

相關問題