Symfony sfWidgetFormInputFile сохранить путь к файлу в bd - PullRequest
0 голосов
/ 20 апреля 2011

Я использую инфраструктуру Symfony и хочу сделать очень простую вещь ... добавить поле ввода type = file в форму, чтобы файл мог быть загружен, а затем сохранить путь к bd, чтобы пользователь мог возможность скачать его.

Должно быть просто, но по какой-то причине у меня "Объект с таким же" linkToFile "уже существует". ошибка. Поле linkToFile в bd является уникальным, и кажется, что значение, полученное isfWidgetFormInputFile, равно другому, что является нечетным, потому что единственные значения, которые у меня в настоящее время есть в bd, являются нулевыми. И это происходит только в том случае, если файл выбран, если поле оставлено пустым, проблем нет.

Код, который у меня есть:

public function configure()
  {
      //the slug field can't be edited
      unset($this['slug']);
      $this->setWidget('linkToFile', new sfWidgetFormInputFile(array(), array()));
      $this->getWidget('linkToFile')->setLabel('Document Upload');
      $this->setValidator('linkToFile', new sfValidatorFile(array("required"=>false), array()));
      $this->setDefault('linkToFile', $this->getObject()->getLinkToFile());

  }

1 Ответ

0 голосов
/ 20 апреля 2011

Что произойдет, если вы выберете уникальную настройку этого поля?

Вероятно, выдает эту ошибку, если у вас есть несколько строк, так как будет несколько linkToFile значений, которые установлены на NULL

...