【问题标题】:CakePHP checkbox for values 0 and 1 [closed]值 0 和 1 的 CakePHP 复选框 [关闭]
【发布时间】:2013-06-03 12:29:17
【问题描述】:

我想为我的数据库的布尔字段生成一个 CakePHP 复选框,但它拒绝了。我尝试了许多不同的方式,但它不起作用。 复选框始终为 1,无论是否选中。 知道可能是什么问题吗?

echo $this->FormTB->input(
    'puntuacion', 
    array(
        'checked' => true, 
        'value' => 1, 
        'label' => 'Puntuar esta empresa',
        'class' => 'checkbox', 
        'data-id' => 'puntuar'
    )
);

我尝试删除 "value" => 1 部分,没有任何改变。

【问题讨论】:

  • 当然它总是1。那是“检查”值。如果您不想发送选中的值,请不要选中该复选框。只需不检查它,您就不会显式发送 0。您发送的不是最终完全相同的值,并且在 POST 之后在控制器/模型中自动表示为 0。
  • 我想要的是如果选中则发送值 1,如果未选中则发送 0。 @Juhana,这是我给 bootstrap 的表单助手起的名字
  • 这已经在内部完成了,正如我已经两次指出的那样。

标签: cakephp checkbox


【解决方案1】:

正如评论中已经多次指出的那样,这正是 cakephp 在内部运行的方式:在控制器/模型中,“未检查”在内部被转换为布尔值 FALSE - 再次等效于整数 0。

这样就足够了:

echo $this->FormTB->input(
    'puntuacion', array(
    'label' => 'Puntuar esta empresa',
    'class' => 'checkbox',
    'data-id' => 'puntuar'));

【讨论】:

    【解决方案2】:

    删除'checked' => true, 'value' => 1, 部分

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-07
      • 2013-11-16
      • 2017-03-18
      • 2021-07-06
      • 1970-01-01
      • 2014-04-17
      • 1970-01-01
      相关资源
      最近更新 更多