蛋糕PHP复选框

时间:2012-12-19 08:09:51

标签: cakephp

我是CakePHP的新手,现在我正在使用复选框我使用了以下语句但是它 在标签后面给出复选框,它也会打印字段。我的要求是它没有 打印字段名称和标签应在复选框后显示。 请帮我 , 提前致谢

<?php echo $form->input('Model.name', array('multiple' => 'checkbox', 'options' => 
$options, 'selected' => $selected));?>

4 个答案:

答案 0 :(得分:13)

首先,确保您的值为布尔值或tinyint 。否则,你永远不会得到一个复选框。

然后,就像这样构建:

echo $this->Form->input('Model.field', array(
    'type' => 'select',
    'multiple' => 'checkbox',
    'options' => array(
            'Value 1' => 'Label 1',
            'Value 2' => 'Label 2'
    )
));

答案 1 :(得分:0)

我的解决方案是根据v.2.0

<?php
echo $this->Form->input('field_name', array(
    'label' => 'Some label',
    'selected' => $selected
    /*maybe some other options*/
));
?>

如果您在上面指定了型号名称,则在创建表单时,您不需要使用模型名称。如果field是boolean,则会自动将控件作为复选框。 Alsom你可以在选项数组中指定它,如

'type'=>'checkbox'
祝你好运!

答案 2 :(得分:0)

要绘制复选框,您必须先在DB中正确配置表。在DB中的字段上设置这些选项:

  1. 字段类型= Tinyint
  2. 长度/值= 1
  3. 设置Defualt = 0
  4. 最后你的观点:

    echo $this->Form->input('checkbox_field');
    

    如果没有,则100%将起作用,然后在视图中为您的字段设置默认值:

    echo $this->Form->input('checkbox_field', array('type'=>'checkbox'));
    

答案 3 :(得分:0)

CakePHP 3.0

$this->Form->input('id', ['type'=>'select', 'multiple' => 'checkbox', 'options'=>$array]);