テーブルUser
とGroup
の間に多対多の関係があります。グループの中には、そのタイプに基づいてユーザーに自動的に割り当てられるものがあります。他のグループは、ユーザー編集フォームを使用して管理者が管理できます。Symfony:EntityTypeフィールドの表示された関係のみを変更する
アドミニストレーターは、想定されるグループのみを管理できるように、EntityType
フォームタイプのquery_builder
オプションを使用しています。
$builde->add('groups', EntityType::class, [
// ...
'query_builder' => function (EntityRepository $er) {
return $er->createQueryBuilder('g')
->where('g.type = ?1')
->setParameter(1, 'user_managed');
},
'multiple' => true,
// ...
]);
私の問題は、フォームで選択したグループのみがユーザーに関連付けられているユーザエンティティを保存するには、削除されて表示されませんでしたすべての関連付けという今では最大です。
表示されたグループのすべてを表示するのではなく、表示されたグループの関連付けを変更する方法はありますか?
おかげ
それはかなり大したことですが、それは完全に正常に動作します。ありがとう! –