我想拥有I18N类别表。我跟着jobeet example。Symfony doctrine i18n行为数据加载失败:违反完整性约束
下面的模式和灯具数据。
./symfony doctrine:build --db --all-classes --and-migrate
./symfony doctrine:data-load data/fixtures/category.yml
当运行这些命令没有数据被插入到数据库和红色框失败显示:SQLSTATE [23000]:完整性约束违规:1062重复条目“1-ET”为键“主要”该得到的数据加载任务执行
查询(记录与“mysqld的--log =日志文件”):
1 Query DELETE FROM my_category
2 Query START TRANSACTION
3 Query SELECT k.id AS k__id, k.position AS k__position FROM my_category k ORDER BY k.position desc LIMIT 1
4 Query INSERT INTO my_category (gender, position, created_at, updated_at) VALUES ('female', '1', '2011-01-14 12:33:05', '2011-01-14 12:33:05')
5 Query SELECT k.id AS k__id, k.lang AS k__lang, k.slug AS k__slug FROM my_category_translation k WHERE (k.slug LIKE 'name-value%' AND k.lang = 'et' AND k.name = 'Name value')
6 Query INSERT INTO my_category_translation (id, lang, name, seeking_label, seeking, slug) VALUES ('1', 'et', 'Name value', 'Label value', 'Value', 'name-value')
7 Query SELECT k.id AS k__id, k.lang AS k__lang, k.slug AS k__slug FROM my_category_translation k WHERE (k.slug LIKE '%' AND k.lang = 'et_EE' AND k.name IS NULL)
8 Query INSERT INTO my_category_translation (id, lang, slug) VALUES ('1', 'et_EE', '')
9 Query rollback
10 Quit
当我手动运行这些命令在刚建成数据库。从上面的3到6查询运行良好并插入数据。 查询号码。 7不输出数据和查询nr。 8是失败的。 (因为ID 1已经存在,插入步骤6)。
该问题必须在查询nr。 7.“k.lang ='et_EE'”我很确定它应该是'et'? 为什么要查询nr。 7是必要的,看起来完全像查询nr。 5但没有和/或搞砸值?
我得到的是worng还是bug?
的schema.yml
myCategory: actAs: Timestampable: ~ Sortable: ~ I18n: fields: [name, seeking_label, seeking] actAs: Sluggable: fields: [name] uniqueBy: [lang, name] builder: [mySluggableTranslit, urlize] columns: name: { type: string(255), notnull: true } gender: { type: string(6) } seeking_label: { type: string(255) } seeking: { type: string(255) }
数据/装置/ category.yml
myCategory: category-1: gender: female position: '1' Translation: et: name: 'Name value' seeking_label: 'Label value' seeking: 'Value'