私はsymfony 3で私のアプリケーションのファイルアップロード機能を実装しようとしています。 私は、ファイルentiryとの関係を持っている製品entiryを持っています。製品の パート:フォーム上のSymfony 3 FileUpload
/**
* @ORM\OneToMany(targetEntity="AppBundle\Entity\File", mappedBy="product")
* @ORM\OrderBy({"weight" = "DESC"})
*/
protected $files;
とフィールド:
->add('files', FileType::class, array('multiple'=> true, 'data_class'=> 'AppBundle\Entity\File'));
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'AppBundle\Entity\Product',
));
}
あなたが見ることができるように、私はdata_class設定しています。
とコントローラにIは、ハンドル形
public function addAction(Request $request)
{
$em = $this->getDoctrine()->getManager();
$product = new Product();
$product->setAddedBy($this->getUser());
$form = $this->createForm(ProductType::class, null);
$form->handleRequest($request);
...
しようとしていると私はエラーを持っている:
Expected argument of type "AppBundle\Entity\File", "Symfony\Component\HttpFoundation\File\UploadedFile" given
私はエラーなしオブジェクト、単にアレイを持っていないdata_classマッピングを削除した場合。 このエラーを解決する方法、UploadedFileをファイル(Entiry)に変換する方法私はTransformerを作成しようとしていますが、ProductEntiryクラスを取得しています。ファイルがないため、結果を処理できません。
回答ありがとうございます。それは作品です –