我有一个模型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
答案 0 :(得分:0)
第1步:该功能为generateFilename
,并且位于sfValidatedFile.class.php
文件(source file中,同时查看此forum post)
第2步:查看form documentation,在文件上传部分,特别列出2-20,其中显示了如何从文件名选择的表单中保存文件