【问题标题】:Override SQL generated by CakePHP's field type mapping覆盖 CakePHP 的字段类型映射生成的 SQL
【发布时间】:2012-01-19 06:46:24
【问题描述】:

我希望得到 Cake PHP 2.x 的字段类型映射,以将密码字段从加盐的 SHA1 哈希更改为 varchar 字段,在 SQL 中更改为 UNHEX('$hash'),这样我就可以将密码存储在二进制文件中(20) 字段。

对于任何质疑我为什么这样做的人: Storing SHA1 hash values in MySQL

目前我认为除了自己做 $this->User->query("INSERT INTO...."); 之外别无他法,如果能以蛋糕的方式做就好了。

任何建议都会很棒!

干杯!

【问题讨论】:

    标签: cakephp


    【解决方案1】:

    你可以试试这个:

    public function beforeSave() {
        if (isset($this->data[$this->alias]['password'])) {
        $this->data[$this->alias]['password'] = DboSource::expression('UNHEX('. $this->data[$this->alias]['password'].')');
        $this->data[$this->alias]['test'] = 'hello';
        }
        return true;
    }
    

    【讨论】:

      猜你喜欢
      • 2012-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-25
      相关资源
      最近更新 更多