我在多对多关系中遇到了一些麻烦。我有Users
和Assets
。我希望能够将用户分配到资产页面上的资产。Symfony2 Doctrine2多对多形式不保存实体
下面的代码显示创建/编辑资产时的用户列表,但对用户复选框所做的更改不会保存,而其余数据将保留。
如果我通过mysql客户端向users_assets添加一个条目,这些更改将显示在资产列表中。
用户
class User extends BaseUser
{
/**
* @ORM\ManyToMany(targetEntity="Asset", inversedBy="users")
*/
private $assets;
}
资产
class Asset
{
/**
* @ORM\ManyToMany(targetEntity="User", mappedBy="assets")
*/
private $users;
}
AssetType
public function buildForm(FormBuilderInterface $builder, array $options)
{
$form = $builder
->add('users', null, array(
'expanded' => true,
'multiple' => true
))
->getForm();
return $form;
}
你不应该chanage'null'到' EntityType'?你是什么意思由null?! – Trix 2017-05-09 13:51:29