1
我一直試圖上傳表單中的多個文件,但我找不到適合我的解決方案。每當我向輸入添加多個文件時,只有其中一個文件被傳遞給控制器並上傳。Symfony 3表單多個文件上傳問題
Controller.php這樣
// File uploading
$files = $auto->getImages();
$images = array();
if($files != null) {
$key = 0;
foreach ($files as $file)
{
$fileName = md5(uniqid()) . '.' . $file->guessExtension();
$file->move(
$this->getParameter('car_adds'),
$fileName
);
$images[$key++] = $fileName;
}
$auto->setImages($images);
}
$auto->getImages()
給了我一個字符串值,而不是一個數組值,爲此,每當我試圖foreach循環它,我得到一個空的結果,並沒有文件上傳。
我試圖重新命名我的圖像格式小部件「的形式[圖片] []」而不是「形式[圖片]」這是由formbuilder產生然而,當我這樣做,我得到以下錯誤:
FormType.php
->add('images', FileType::class, array(
'label' => false,
'data_class' => null,
'label_attr' => array('class' => $label_offset),
'required' => false,
'attr' => array(
'class' => $styles,
'multiple' => true)))
Entity.php
/**
* @var array
*
* @Assert\Image(
* mimeTypes = {
* "image/png",
* "image/pjpeg",
* "image/jpeg",
* "image/gif"
* },
* mimeTypesMessage="Failas yra netinkamo formato",
* maxSize = "10M",
* maxSizeMessage="Failas yra per didelis"
*)
* @ORM\Column(name="images", type="array", nullable=true)
*/
private $images;
/**
* Set images
*
* @param array $images
*
* @return Auto
*/
public function setImages($images)
{
$this->images = $images;
return $this;
}
/**
* Get images
*
* @return array
*/
public function getImages()
{
return $this->images;
}
這是我試圖建立與Symfony的3所以我假設必須有索姆我的第一個項目這是我可能忽略的東西。
哇哦,那真是愚蠢LMAO。非常感謝! –