Php 单联接列问题的Symfony关联
我有以下代码定义两个实体之间的关系:Php 单联接列问题的Symfony关联,php,symfony,doctrine-orm,doctrine,symfony-forms,Php,Symfony,Doctrine Orm,Doctrine,Symfony Forms,我有以下代码定义两个实体之间的关系: /** * Barcode * * @ORM\Table(name="barcode") * @ORM\Entity */ class Barcode { . . . /** * @var ArrayCollection * * @ORM\ManyToMany(targetEntity="Entity\Product", cascade={"persist"}
/**
* Barcode
*
* @ORM\Table(name="barcode")
* @ORM\Entity
*/
class Barcode
{
.
.
.
/**
* @var ArrayCollection
*
* @ORM\ManyToMany(targetEntity="Entity\Product", cascade={"persist"}, mappedBy="barcodes")
*/
protected $products;
.
.
.
/**
* Barcode constructor.
*/
function __construct()
{
$this->products = new ArrayCollection();
}
及
使用xml文件中定义的关系:
<many-to-many field="barcodes" target-entity="Entity\Barcode"
inversed-by="products" index-by="products" fetch="LAZY">
<cascade>
<cascade-persist/>
</cascade>
<join-table name="products_barcodes">
<join-columns>
<join-column name="product_id" referenced-column-name="id"/>
</join-columns>
<inverse-join-columns>
<join-column name="barcode_id" referenced-column-name="id" nullable="1"/>
</inverse-join-columns>
</join-table>
</many-to-many>
执行任何查询时,我都会遇到以下错误:
“实体\条形码#产品”不是与单个联接列的关联。
有什么问题吗?
注意:在产品类的表单中添加需要查询生成器属性的项时发现问题
<many-to-many field="barcodes" target-entity="Entity\Barcode"
inversed-by="products" index-by="products" fetch="LAZY">
<cascade>
<cascade-persist/>
</cascade>
<join-table name="products_barcodes">
<join-columns>
<join-column name="product_id" referenced-column-name="id"/>
</join-columns>
<inverse-join-columns>
<join-column name="barcode_id" referenced-column-name="id" nullable="1"/>
</inverse-join-columns>
</join-table>
</many-to-many>