Shopware 6 翻译上的未知列 <tablename>_id
Posted
技术标签:
【中文标题】Shopware 6 翻译上的未知列 <tablename>_id【英文标题】:Unknown column <tablename>_id on Shopware 6 translations 【发布时间】:2020-11-25 23:59:17 【问题描述】:创建带有翻译的 Shopware6 实体后,
完全按照official tutorial,
我收到Unknown column "<tablename>_id"
错误;表名似乎被解释为列名的一部分。
【问题讨论】:
【参考方案1】:对 *_translation 表中映射字段的命名方案有要求:
他们必须遵循
在教程中这并不明显,因为他们谈到了 bundle_id,其中“bundle”不是实体的名称,而是表的名称。很可能您在表中添加了供应商前缀和模块名称前缀。
例子:
Your Entity: ACME\CoolModule\Core\Content\FoobarDefinition
Entity Table:
acme_coolmodule_foobar
Translation-table HAS to be exactly:
CREATE TABLE IF NOT EXISTS `acme_coolmodule_foobar_translation` (
`acme_coolmodule_foobar_id` BINARY(16) NOT NULL,
`language_id` BINARY(16) NOT NULL, ...
困难在于 Shopware 没有 SWAG-Prefix 他们自己的教程模块,所以你看不出区别。
【讨论】:
以上是关于Shopware 6 翻译上的未知列 <tablename>_id的主要内容,如果未能解决你的问题,请参考以下文章
Shopware 6:使用 sw_include 时未加载 Twig 文件
Shopware 6 : 如何使用 Shopware\Core\Content\Category\Event 中的 `CategoryIndexerEvent`