Symfony保存不同模型的对象

时间:2011-12-11 18:07:07

标签: php symfony1 doctrine symfony-1.4 symfony-forms

我有一个模型Poster,服务器存储图像。因此该模型具有filename字段。我有一个表单类MakenewForm.php,我需要覆盖它的doSave(),以便为Poster对象实现保存。 MakenewForm有一个文本字段,使用imagettftext在预设图像上写入。所以为了保存,我需要

1. save the modified image data onto a file in the filesystem. 
2. save an object of Poster class with filename field set to the newly saved file

对于第1步,我想获得新文件的随机名称。我知道symfony对上传的文件(file input widget and file validator)使用随机文件命名,我想使用相同的功能,但我无法找出它是什么。

对于第2步,由于此$con变量,我有点困惑。有什么用?我如何使用它来满足我的需求?好吧,我总是可以通过创建PosterForm对象并设置适当的字段并为其调用doSave来实现保存。但我想覆盖表单的默认doSave()功能。我的MakenewForm extends PosterForm:P

1 个答案:

答案 0 :(得分:0)

第1步:该功能为generateFilename,并且位于sfValidatedFile.class.php文件(source file中,同时查看此forum post

第2步:查看form documentation,在文件上传部分,特别列出2-20,其中显示了如何从文件名选择的表单中保存文件