Как создать несколько флажков, сгруппированных по полям в Cakephp 3

У меня возникла проблема с этой документацией:

Cakephp3 Cookbook – Form – Создание Select Pickers Я попробовал «несколько флажков»:

$options = [ 'Group 1' => [ 'Value 1' => 'Label 1', 'Value 2' => 'Label 2' ], 'Group 2' => [ 'Value 3' => 'Label 3' ] ]; echo $this->Form->select('field', $options, ['multiple' => 'checkbox']); 

но выход был ошибкой:

 Notice (8): Array to string conversion [CORE/src/View/StringTemplate.php, line 238] 

это как сказать мне, что значение массива должно быть строкой, а не массивом, но есть ли способ сделать эту работу? Пожалуйста, помогите мне решить эту проблему?

Related of "Как создать несколько флажков, сгруппированных по полям в Cakephp 3"

Как уже упоминалось в комментариях @Holt, то, что вы там делаете, просто не поддерживается. Если вы считаете, что это может быть полезно, вы можете предложить его как усовершенствование в GitHub.

Теперь вы можете сделать это на полпути вручную, например,

 foreach ($options as $group => $groupOptions) { $legend = $this->Html->tag('legend', $group); $checkboxes = $this->Form->select($group, $groupOptions, [ 'name' => 'field', 'multiple' => 'checkbox' ]); echo $this->Html->tag('fieldset', $legend . $checkboxes); } 

или, для лучшего повторного использования, создайте настраиваемый виджет, который может обрабатывать такие структуры.

См. « Кулинарная книга»> «Вид»> «Помощники»> «Форма»> «Добавить пользовательские виджеты»