如何在Yii中使用Gii生成数据库表模型?

时间:2013-02-09 07:13:22

标签: php class yii gii

问题:

我使用gii生成数据库表模型。因此,如果我对用户表结构有任何更改,我使用了gii,我的所有关系和其他方法都从类中删除。所以我需要备份类并重新生成类并带回其他方法和关系。

可能的解决方案:

我将我的班级改为两个类,用于表'用户':

class Users extends UsersMapper {

    public function tableName() {
        return 'users';
    }

    public function rules() {
       .....
    }

    public function relations() {
       .....
    } 
}


class UsersMapper extends CActiveRecord {

    public function getAllUsers() {
       ......
    }

    public function getBlockedUsers() {
       ......
    }   
}

问题:

上面的方法对我有用,我在代码中只使用Users类。它是有效的方法还是这个逻辑有任何问题。还有其他方法。

由于

1 个答案:

答案 0 :(得分:1)

Giix扩展程序会为您的案例创建一个models/Users类和一个models/_base/BaseUsers类。 Users类扩展了BaseUsers类。因此,在更改数据库时只需要重新生成BaseUsers类。它还附带了一些额外的方法,我使用了很多。