当我从后端添加新酒店时,我正在使用sfWidgetFormInputFileEditable来上传酒店的照片。这是小部件的描述:
sfWidgetFormInputFileEditable是 一个输入文件小部件,扩展了 要添加的sfWidgetFormInputFile小部件 显示或删除的可能性 以前上传的文件。
Option Description
file_src The current image web source path (required)
正如您所看到的,参数“file_src”是必需的,但是当我创建一个新酒店时,我没有任何“当前图像Web源路径”用于新酒店..
我该怎么做,基于sfWidgetFormInputFileEditable创建一个新类,其中不需要选项“file_src”?您认为智能解决方案是什么?
sf 1.4
哈维
答案 0 :(得分:3)
此参数仅在编辑模式下使用...因此,您可以使用未来图像的路径填充它,如下所示:
$this->widgetSchema['cover'] = new sfWidgetFormInputFileEditable(array(
'label' => 'Company logo',
'file_src' => '/uploads/covers/'.$this->getObject()->getCover(),
'is_image' => true,
'edit_mode' => !$this->isNew(),
'template' => '<div>%file%<br />%input%<br />%delete% %delete_label%</div>',
));
根据isNew表单的属性查看edit_mode参数。