如何确保Symfony embeddedForm的对象绑定到表单的对象?

时间:2011-02-11 22:11:25

标签: php symfony1 symfony-1.4

Production:
  image_id

Image:
  id

ImageForm嵌入在ProductionForm中,图像是可选的。问题是,当通过embeddedForm将图像添加到已存在生产并且不更改生产表单中的任何标准值时,不保存主表单(生产没有更改)..除了其image_id需要更新。

我有两个想法,问题是我是否错误地设置了这些表单,或者我是否需要在保存方法绑定中添加一些内容。

请注意,如果生产是新的,即您正在同时添加新的作品和图像,或者您正在编辑作品(即更改其名称为另一个字段)并添加图像,则不会出现此问题。或者,如果您正在编辑已绑定的图像。

我很清楚地知道为什么会发生这种情况,并且Symfony执行的命令会在表单中保存..但我不知道要添加什么来使其工作。

到目前为止,涉及的代码不多,只有在高级表单jobeet上找到的代码;我正在使用$this->embedRelation('Image');和post验证器+ saveEmbeddedForms覆盖以避免保存空白图像。


总结:问题在于,如果要将图像添加到已存在的生产中而不更改存储在生产表中的任何值,则会保存图像,但与生产无关,image_id存储在生产表保持为空。

1 个答案:

答案 0 :(得分:0)

我使用$this->getObject()->setUpdatedAt(date('c'));进行了这项工作..我们将不胜感激。