php - Kohana ORM 插入 NULL 而不是空字符串

标签 php mysql kohana kohana-orm kohana-3.2

在 Kohana 3.2 中,当您覆盖 ORM 的函数“值”时,然后执行如下操作:

public function values(array $values, array $expected = NULL) {           

  if($values['a_column'] == "") $values['a_column'] = NULL;

  return parent::values($values);
}

NULL 值无论如何都会被转换成一个空字符串,这不是我想要的行为。 有人知道解决方法吗?我在文档或网络上找不到任何内容...

最佳答案

我找到了这个问题的答案。只需在您的模型中使用过滤器,就像这样:-

public function filters()
{
  return array(
    'initial_assessment_date' => array(
      array(function($value) {
        return (!$value) ? NULL : $value;
      })
    )
  );
}

关于php - Kohana ORM 插入 NULL 而不是空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11557267/

相关文章:

php - Laravel 5.2 删除外键

php - SQL 查询对于另一个 mysql 版本执行速度较慢?

php - Kohana ORM(自定义查询)与 MySQL ORDER BY 和 GROUP BY

php - 意外 token 'a'

php - 将对象从 Controller 传递到 View

php - 带有 HAVING 子句的 Sql COUNT 产生错误结果

php - 在 Bootstrap 文件的 Kohana::modules() 中找不到分页模块

Kohana param() 不起作用

php - 在 Doctrine : curious database generation 中使用抽象子类

php - 将文件上传到另一个域