В Symfony, где изменить размер изображения, загруженного при автоматическом сохранении sfValidatorFile? - PullRequest
1 голос
/ 25 февраля 2011

В symfony 1.4, как лучше всего изменить размер изображения, загруженного с формой, при использовании sfWidgetFormInputFileEditable и sfValidatorFile и зная, что они уже сохранили изображение без запроса?

Где поставить код?Я немного растерялся ...

Или я должен иначе использовать sfValidatorFile?

// In my form configure method:
$this->validatorSchema['image'] = new sfValidatorFile(array(
  'path'       => sfConfig::get('sf_upload_dir').'/images/',
  'mime_types' => 'web_images',
));

Спасибо

Ответы [ 2 ]

1 голос
/ 25 февраля 2011

Хорошее место для этого - переопределение значений процесса в форме.

class FooForm extends BaseFooForm {

  public function processValues($values)
    if ($values['image'] instanceof sfValidatedFile) { // file was uploaded
      $temp = $values['image']->getTempName();
      // do image manipulation here using GD or other
      $values['image'] = $pathToSavedResizedFile;
    }
    return parent::processValues($values);
  }

}

Я иллюстрировал ту же технику в старом посте блога:

http://www.gerryvandermaesen.com/posts/beyond-symfony-forms-custom-file-uploads

0 голосов
/ 06 декабря 2012

Просто подсказка, этот пакет определяет сервис, который позволяет манипулировать как в шаблоне, так и в контроллерах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...