选择标签更新另一个

时间:2016-03-13 02:34:50

标签: php mysql symfony doctrine foreign-keys

我有一个包含4个促销的选择标签,来自促销实体的chardeg

$builder->add('Promotion', EntityType::class, array(
           'class' => 'AppBundle:Promotion',
           'choice_label' => 'promotionName',
       ))

在下一个选择标签中我想显示每个促销的学生, 在学生实体中,有一个外键可以影响每个学生的晋升

当我选择2015年促销活动时,所有学生都会将此外键收取到第二个标签选择等

1 个答案:

答案 0 :(得分:1)

你基本上要求动态choice_label,这很简单,因为Symfony 2.7:http://symfony.com/blog/new-in-symfony-2-7-choice-form-type-refactorization

'choice_label' => function(Promotion $promotion) {
    return $promotion->getName() . ': ' . implode(', ', array_map(function(User $user) {
        return $user->getName();
    }, $promotion->getUsers());
}

这将返回一个带有促销名称的标签,后面跟着它的用户:

<label>Holiday promotion: John Doe, Jane Doe</label>