如何在cakephp中创建一个唯一的id

时间:2014-09-08 05:50:00

标签: cakephp cakephp-2.0 cakephp-2.3

我想实现像这样的唯一ID-AS-R9999-1 / AS-R9999-A。它可以达到1-5或A-F。但是将来我的客户会增加但是id不能长,我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

Cake仅使用UUID或整数id主键。

您仍然可以拥有自定义字段,而不是主键。您可以在模型的beforeSave()中使用类似

的方法实现此功能
public function beforeSave($options = array()) {
    if (empty($this->data[$this->alias][$this->primaryKey]) { // this is a create as id is empty
        $this->data[$this->alias]['your_field'] = $this->_generateYourCustomValue();
    }
    return true;
}