我想实现一个选择框,用户可以在其中选择他想要联系的支持团队。每支球队都有自己的号码,这些号码不是连续的。
所以我把这个数组添加到选择框中:
array('1' => 'Team A', '123' => 'Team B')
但选择框现在显示:
<select [...]>
<option value="0">Team A</option>
<option value="1">Team B</option>
</select>
{%block choice_widget_options%}中的{{dump(options)}}显示了以下内容:
array(2) {
[0] => class Symfony'Component'Form'Extension'Core'View'ChoiceView#1538 (3) { public $data => int(0) public $value => string(1) "0" public $label => string(17) "Team A" }
[1] => class Symfony'Component'Form'Extension'Core'View'ChoiceView#1539 (3) { public $data => int(1) public $value => string(1) "1" public $label => string(19) "Team B"
}
有人知道我该怎么解决吗?
您将密钥添加为字符串
array('1' => 'Team A', '123' => 'Team B')
更改为
array(1 => 'Team A', 123 => 'Team B')
好吧,伙计们,我发现了问题:)
我稍后使用"array_shift($choices);"从数组中删除第一个团队(默认值)。这会将键更改为0,1,2,3,4,依此类推。