Symfony 4在EntityType

时间:2019-01-30 10:56:15

标签: php symfony symfony4

我有实体Boisson,并且与实体Image旋转 我必须为Boisson

的实例添加4张图片

实体Boisson

/**
 * @ORM\OneToMany(targetEntity="App\Entity\Image", mappedBy="boisson")
 */
private $images;

/**
 * @return Collection|Image[]
 */
public function getImages(): Collection
{
    return $this->images;
}

public function addImage(Image $image): self
{
    if (!$this->images->contains($image)) {
        $this->images[] = $image;
        $image->setBoisson($this);
    }

    return $this;
}

public function removeImage(Image $image): self
{
    if ($this->images->contains($image)) {
        $this->images->removeElement($image);
        // set the owning side to null (unless already changed)
        if ($image->getBoisson() === $this) {
            $image->setBoisson(null);
        }
    }

    return $this;
}

结束我的BoissonType

$builder
    ->add('user',EntityType::class, [
        'class' => User::class,
        'query_builder' => function (UserRepository $er) {
            return $er->createQueryBuilder('u');
        },
        'choice_label' => 'username'])
    ->add('nom')
    ->add('prix')
;

如何获取4种输入类型文件以将图像添加到我的Boisson

1 个答案:

答案 0 :(得分:1)

在嵌入表单时,如果您具有一对多关系,则“很多”意味着您必须在下面的“一个” Boisson表单中使用CollectionType。

$builder->add('images', CollectionType::class, [
    'entry_type' => ImageType::class,

]);

请检查文档here:有关此类字段配置的更多信息。