0

我有一个产品实体映射如下:

class Product
{

    use IdentifiedAutogeneratedEntityTrait;
    use BaseEntityTrait;

    ......

    /**
     * @ORM\ManyToOne(targetEntity="\Application\Sonata\MediaBundle\Entity\Media")
     * @ORM\JoinColumn(name="product_image", referencedColumnName="id")
     */
    protected $image;

   ......

    public function setImage(\Application\Sonata\MediaBundle\Entity\Media $image)
    {
        $this->image = $image;
    }
}

然后在我的管理表单中,我有这个:

protected function configureFormFields(FormMapper $form)
{
    $form
            ->add('product_name', null)
            ->add('product_description', null)
            ->add('image', 'sonata_type_admin');
}

当我添加一个新产品时,我可以上传一张图片,是的,它可以工作,但是我可以在我创建产品的页面上看到图片,我该怎么做?

4

1 回答 1

0

我认为你必须使用sonata_type_model_list而不是sonata_type_admin.

protected function configureFormFields(FormMapper $form)
{
    $form
            ->add('product_name', null)
            ->add('product_description', null)
            ->add('image', 'sonata_type_model_list');
}
于 2014-10-09T16:36:58.927 回答