yii关系数据库多表查询

两个表的model继承自CActiveRecord

class  User extends CActiveRecord
class  Post extends CActiveRecord

很明显,User和Post是一对多的关系

在两个Model中覆盖relations方法

//class Post
public function relations()
    {
        return array(
            ‘author‘=>array(self::BELONGS_TO, ‘User‘, ‘id‘)
        );
    }

// 格式为
// ‘relationsName‘ => array("relationship", "关联表", "该表的外键")
// relationName 可以随意
// relationship 为
// self::BELONGS_TO
// self::HAS_MANY
// self::HAS_ONE
// self::MANY_MANY  四个常量

在postController中可以按照默认的,使用CActiveDataProvider获得$dataProvider,此时User表的数据已经默认关联上。

在输出的时候可以使用 User.name 来输出和此post关联的用户名

yii关系数据库多表查询,布布扣,bubuko.com

yii关系数据库多表查询

上一篇:Oracle、MySql、Sql Server比对


下一篇:gdb