如何在CakePHP中保存枚举类型列中的数据



可能重复:
CakePHP 2.0-使用MySQL ENUM字段和表单助手创建Select Input

我的表单中有一个复选框。该复选框在数据库中有一列枚举类型。如果选中该复选框,我需要在该列中保存1,否则为0。

我使用CakePHP的save函数来保存所有表单值。当我选中该复选框时,列会更新为1,但如果我取消选中并按下提交按钮,它会更新为空值。

如何在CakePHP中使用复选框保存枚举类型值?

或者将列类型更改为tinyint(0/1((例如在MySQL中(:

ALTER TABLE users CHANGE COLUMN active active tinyint not null default 0;

或者,验证值是否通过(或已检查(,例如:

if($this->request->data['User']['active'] == null) {
    $this->request->data['User']['active'] = 0;
}

Enum将使用Null作为列的默认值,如果您没有定义任何内容的话。更新表定义并将"0"设置为默认值。它会解决你的问题。

相关内容

  • 没有找到相关文章

最新更新