Symfony Doctrine在joinColumns的列名中使用破折号

时间:2014-03-26 00:06:39

标签: symfony doctrine-orm

我在运行mysql的网站上实施doctrine时遇到了麻烦。

基本上,问题在于在列名中使用破折号。

我们使用标准方式命名表和列名,这是一个例子:vendor_point-of-sale。在读取您已经或多或少知道这两者之间的联系的名称时,销售点实体与供应商实体相关联。

vendor表的示例中,我有一个名为point-of-sale_id的列,同样,point-of-sale表的主键也称为point-of-sale_id。只有当我尝试在findBy实体上调用vendor时才会出现问题,它只是不创建子对象而且(我检查了日志)没有调用{{ 1}}表。

point-of-sale实体上的基本对象查询(official doctrine documentation)可以正常工作,如果我按照here所述添加标识符引用。

以下是一些代码:

Vendor.orm.yml:

point-of-sale

Acme\Bundle\CoreBundle\Entity\VendorApiKey: ... pointOfSale: targetEntity: PointOfSale cascade: { } mappedBy: null inversedBy: null joinColumns: point_of-sale_id: name: `point-of-sale_id` referencedColumnName: point-of-sale_id orphanRemoval: false ... 之后我想做的就是:

findBy

不幸的是,这会返回$vendor->getPointOfSale() 。如果我不加引号,它会给我一个mysql异常。

我想发布他们的论坛并可能创建错误请求,但我想先听听你对此有何看法。

谢谢,非常感谢所有关于如何使这项工作的建议。

更新:在进一步阅读后,我偶然发现this。这没有任何意义......如果我删除了引文,它会给我这个错误:

NULL

这是否意味着过时的文档?我很困惑。

0 个答案:

没有答案