我在球员和教练之间建立了多对多的关系。每个球员可以有很多教练,每个教练可以有很多球员。
如果他愿意,教练可以创建许多团队。在创建团队的整个过程中,他必须选择将成为他一部分的球员。
教练只能在他的球队中添加他有特定权限的球员。这是当前问题的外部过程,但它表明并非数据库中的所有玩家都可以显示在表格中,而只有他有权这样做的玩家。
必须显示的球员可通过以下方式获得:
$players = $this->get('security.context')->getToken()->getUser()->getPlayers();
现在,当我显示创建团队的表单时,我正在执行以下操作:
$builder->add('players', 'entity', array(
'class' => 'OSCUserBundle:Player',
'property' => 'name',
'multiple' => true
));
然而,这给了我数据库中所有可用的玩家。有没有办法指定 symfony2 仅以某些玩家的形式显示?