我是 Symfony2 的新手,我一直在努力解决处理表单提交的问题。我不禁觉得我错过了一些愚蠢的东西,但在谷歌搜索后没有找到任何解决方案,我想我应该在这里发布我的问题。
因此,我有一个表单来创建子实体并编辑父实体上的几个字段。为了构建表单,我使用了 FormBuilder,其中添加了两种表单类型(一种用于子项,一种用于父项)。父类型包含父项的 ID 字段。
在处理表单提交的操作上,我调用了handleRequest,但它失败了,因为:
Neither the property "id" nor one of the methods "setId()", "_set()" or "_call()" exist and have public access in class "Ahms\MyBundle\Entity\Parent".
当父 id 字段是表单的一部分时会发生这种情况,当它不是表单的一部分时,会顺利运行。
我错过了什么?
谢谢!
最佳答案
如果您从子 Controller 创建表单,则必须在子类中声明 id,并且必须编写 public function setId($id)
和 public function getId()
方法。
关于Symfony2 - 从同一表单保存子级和父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21135430/