我有一个Rails.application.config.assets.precompile += %w( particles.js )
,它显示为一系列单选按钮:
ChoiceType
我希望每个选择都有一个递增的ID,例如“ card1”,“ card2”等,但不确定如何实际执行。选项本身是动态创建的-我不提前知道会有多少个选项(如果有)。
理想情况下,我可以在“ choice_attr”和/或“ choice_label”中访问某种内部计数器,但我在文档中看不到类似的东西。有什么想法吗?
答案 0 :(得分:3)
在外部创建一个计数器变量,并为您的每个选择计数。要添加ID,请使用choice_attr选项:
$i = 0;
$form = $this->createFormBuilder()
->add('card', ChoiceType::class, [
'choices' => $choices,
'choice_attr' => function() use ($i) {
$i++;
return ['id' => 'choice-'.$i];
},
])