Symfony2如何在提交的表单上设置数据?

时间:2015-08-23 15:35:11

标签: symfony symfony-forms

我正面临一个棘手的问题。

底层对象(实体)非常简单:Work ManyToOne Artist。

使用我的填充对象artist,在我使用填充对象$work->setArtist($artist)构建表单之前,我的UI会使工作区$work无效,因为我总是artist。一切都好。因此,我在此表单中没有artist字段。我的表单包含一些依赖于基础RewriteEngine On RewriteRule ^PlayList/([^/]*)$ /PlayList.php?v=$1 [L] RewriteRule ^Type/([^/]*)$ /Type.php?v=$1 [L] RewriteRule ^Videos/([^/]*)$ /Videos.php?id=$1 [L] RewriteRule ^Watch/([^/]*)$ /Watch.php?v=$1 [L] 值的字段,因此我必须在提交表单之前设置艺术家(而不是之后)。

现在我正在制作一个MasterType表单,其中嵌入了一个WorkType。这次我无法在构建表单之前设置艺术家,因为艺术家提交了MasterType的数据结果。

我的问题是:如何将艺术家设置为嵌入式WorkType的基础对象?

必须在提交MasterType之后,因为艺术家依赖于提交的数据,但在提交WorkType之前,因为WorkType表单包含取决于艺术家的字段。

到目前为止,我试图破解几项事件并没有成功。使用MasterType上的SUBMIT事件,我无法在不面对&#34的情况下在嵌入式WorkType上设置数据;您无法在提交的表单上设置数据"。

非常感谢任何见解!

1 个答案:

答案 0 :(得分:0)

WorkType上的FormEvents :: PRE_SUBMIT怎么样?