cakephp复选框多选只发送最后选中复选框的值

我没有得到所有选中复选框的值.它只是给我最后一个选中复选框的值

这是代码

foreach($apps as $app){


        echo $this->Form->input('Application.id', array('type'=>'checkbox','multiple' => 'checkbox' , 'id'=>$app['Application']['description'], 'div'=>false,'type'=>'checkbox','value' => $app['Application']['description'],'label'=>$app['Application']['description']));



    }

并在提交时,我得到最后一个复选框,即LASTCHECKBOX

object(CakeRequest) {
    params => array(
        'plugin' => null,
        'controller' => 'groups',
        'action' => 'add',
        'named' => array(),
        'pass' => array()
    )
    data => array(

        'Application' => array(
            'id' => 'LASTCHECKBOX'
        )

    )
    query => array()
    url => 'groups/add'
    base => ''
    webroot => '/'
    here => '/groups/add'
}

最佳答案 我认为这是因为“价值”.

在您的情况下使用“options”=>数组(1,2,3)

你最好不要在视图中设置值,默认值或类似的东西.
使用控制器操作来设置默认值.
它应该工作得很好.

if ($this->request->isPost()) {

} else {
    $this->request->data['Model']['fieldname'] = 'defaultvalue';
}
点赞