У меня есть форма с полем sfWidgetFormInputFile. Я загружаю изображения, и после загрузки я хотел бы немного обработать только что загруженный файл.
Я знаю, что могу использовать для этого класс validated_file_class. Я перезаписываю метод save() в своем пользовательском классе, и файл сохраняется правильно, но сохранение в базе данных не работает, он просто отправляет мне нулевые значения для поля имени файла. Я что-то упускаю?
Вот соответствующий код:
class MyForm extends BaseMyForm
{
public function configure()
{
$this->widgetSchema['image'] = new sfWidgetFormInputFile();
$this->validatorSchema['image'] = new sfValidatorFile(array(
'required' => true,
'path' => sfConfig('sf_upload_dir'),
'mime_types' => 'web_images',
'validated_file_class' => 'MyCustomValidatedFile'
));
}
}
class MyCustomValidatedFile extends sfValidatedFile
{
public function save($file = null, $fileMode = 0666, $create = true, $dirMode = 0777)
{
parent::save($file, $fileMode, $create, $dirMode);
}
}