symfony:csDoctrineActAsSortablePlugin 和 i18n
[最初发布于 Symfony 论坛,但没有(正确)答案已经给出了]。
有没有人曾经设法在任何具有 i18n 字段的模型上使用 csDoctrineActAsSortablePlugin 实现可排序行为? 一切都安装得很好,但是当尝试为 i18n 模型数据加载固定文件时,它会因重复键条目的 MySQL 完整性约束违规而崩溃。 i18n 型号是否需要特殊处理?
我的插件版本是1.5.4.1,安装在symfony 1.4.8上。
除此之外,您是否知道在管理生成器中添加“moveup”“movedown”功能的任何其他解决方案(插件)?
[originally posted on Symfony forum but no (proper) answer has been given yet].
Has anyone ever managed to put Sortable behavior using csDoctrineActAsSortablePlugin on any model having i18n fields?
Everything is installed fine but when trying to doctrine:data-load a fixtures file for the i18n model, it crashes by a MySQL integrity constraint violation about duplicate key entry.
Is special handling required for i18n models?
My plugin version is 1.5.4.1 installed on symfony 1.4.8.
Apart from this, do you know of any other solutions (plugins) for adding "moveup" "movedown" functionality in the admin generator?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我构建了 sfDoctrineBuildTask 类的自定义版本来解决此问题:
http ://forum.symfony-project.org/viewtopic.php?t=37340#p136449
I've built a custom version of the sfDoctrineBuildTask class that curates this problem:
http://forum.symfony-project.org/viewtopic.php?t=37340#p136449
我找到了一种比最初在 symfony 论坛上发布的更好的解决方法。
在您的
schema.yml
中,注释所有模型的Sortable
行为,并放置一个等效的position
列来代替此列(这是插件将在数据库中为指定模型创建的实际列)具有以下属性:Run
symfonydoctrine:build --all --and-load --no -确认
。这将正确插入数据库中的所有数据。恢复您的
schema.yml
并运行symfonydoctrine:build --all-classes --model --forms --filters
。这将恢复模型中的Sortable
行为,而不影响您的数据。I've found a better workaround that the one originally posted on symfony forum.
In your
schema.yml
comment theSortable
behavior to all of your models and place an equivalentposition
column instead of this (this is the actual column that will be created by the plugin in the database for the specified model) with the following properties:Run
symfony doctrine:build --all --and-load --no-confirmation
. This will correctly insert all the data in the database.Restore your
schema.yml
and runsymfony doctrine:build --all-classes --model --forms --filters
. This will restore theSortable
behavior in your models without affecting your data.