Ico*_*ood 5 php forms symfony doctrine-orm
我是Symfony表单的新手,我正在试图找出一个带有引用父对象的隐藏字段的表单.例如,我有一个与联系人有多对一关系的列表.创建新联系人时,需要一个隐藏字段,其中包含要添加联系人的列表的ID.
目前我正在尝试嵌入一个ListIdType
在我的表单中调用的ContactType
表单.ListIdType
表单中唯一的字段是列表的id.这很好用,因为我可以在空的联系人实体上设置列表,它会自动填充名为contact[list][id]
(在ListIdType
表单中定义)的表单中的元素.这个问题是,当我提交表单时,我得到一个错误,说列表类中不存在元素"id"或methed"setId()".
我的感觉是我做错了什么,但我找不到任何文件指出我正确的方向.
我想出的解决方案是添加一个property_path
设置为选项的隐藏字段FALSE
.这是以下代码ContactType::buildForm
:
$builder->add('list_id', 'hidden', array(
'data' => $data->getList()->getId(),
'property_path' => FALSE,
));
Run Code Online (Sandbox Code Playgroud)
然后我在我的控制器中处理该字段.
这有效,但不是我最好的解决方案.如果有人能提出更好的方法,我仍然是开放的!
归档时间: |
|
查看次数: |
7089 次 |
最近记录: |