我有一个Product实体映射如下:
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');
}
当我添加新产品时,我可以上传图片,是的,但是我可以在页面上看到我创建产品的图片,我该怎么做?
答案 0 :(得分: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');
}