Radio Button CakePHP 3.0

DAN*_*LEE 6 php cakephp cakephp-3.0

在CakePHP 2.0中,我实际上可以将'before','after'和'separator'属性添加到单选按钮.这些属性将在我的无线电选项之间创建一个div元素.看起来这些选项已从CakePHP 3.0中删除.我怎么能在CakePHP 3.0中做到这一点?

<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6">
    <div class="square-screening single-row screen-radio">
      <?php echo $this->Form->input('q1',array(
          'legend'=> false,
          'type'=>'radio',
          'options'=> $options,
          'required'=>'required',
          'before' => '<div class="radio-inline screen-center screen-radio">',
          'separator' => '</div><div class="radio-inline screen-center screen-radio">',
          'after' => '</div>',
      )); ?>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

小智 9

您需要使用FormHelper模板.从迁移指南:

已从radio()中删除了分隔符,之间和图例选项.您现在可以使用模板更改包装HTML.

div,before,after,between和errorMessage选项已从input()中删除.

所以在你的情况下使用这个

echo $this->Form->input('q1', [
    'templates' => [
        'radioWrapper' => '<div class="radio-inline screen-center screen-radio">{{label}}</div>'
    ],
    'type' => 'radio',
    'options' => $options,
    'required' => 'required',
    'label' => false
]);
Run Code Online (Sandbox Code Playgroud)

也可以看看: