【发布时间】:2013-07-11 08:55:11
【问题描述】:
我需要一个项目翻译实体和维护内容的简单方法。一个“myentity”可以有多个“myentity_trans”。
到目前为止这很容易,但我需要一个简单的动态表单,而不会对 symfony2 默认行为进行太多更改。
当我创建/编辑“myentity”时,我需要为每种语言创建一个“myentity_trans”子表单。有没有一种通用的方法来处理这一切?
以我的实体为例:
myentity
- id
- status
myentity_trans
- id
- myentity_id
- language_id
- ...
language
- id
- name
编辑 1: 如果我有相关实体,这里我的表单配置可以编辑:
$builder
->add('name')
->add('trans', 'collection', array(
'type' => new RetailerTransType(),
'allow_add' => true,
'allow_delete' => true
));
现在我喜欢每种可能的语言都使用空表单,因此用户可以轻松创建翻译。我尝试使用查询生成器,但它显然不适用于集合类型。
【问题讨论】:
-
这就是我在此期间发现的。如何将其与我的语言表连接起来,以便为每种语言获得一个空表格?如果可能,无需其他 javascript 请求。
-
不,您需要 javascript 来添加空表单。但你不会向服务器发出请求。空子表单的原型已经在你的 html 中了。
-
它在我编辑实体时有效,但在创建时无效?我尝试在我的表单类型类中使用带有左连接的查询构建器来获取每种语言的空实体集合,但我仍然遇到语法错误。 :( 有人对此有经验吗?
-
这里的问题是到目前为止没有人知道你做了什么。错误信息是什么?你的表单类型是什么?没有人能帮忙,只能链接没有更多信息的教程。请在常见问题解答中告知自己如何提出正确的问题。
标签: php forms symfony doctrine-orm