AR提供了一个面向对象的接口, 用以访问数据库中的数据。
声明 AR 类
要想声明一个 AR 类,你需要扩展 yii\db\ActiveRecord 基类, 并实现 tableName 方法,返回与之相关联的的数据表的名称。如果包含表前缀就使用{ {%tableName}}的方式。
访问列数据
AR访问数据就像访问public的属性一样,不过源码层面并不是public的。
建立数据库连接
AR 用一个 yii\db\Connection 对象与数据库交换数据。 默认的,它使用 db 组件作为其连接对象。如果需要让 AR 类使用不同的数据库链接(DB connection) ,可以覆盖掉 yii\db\ActiveRecord::getDb() 方法。
查询数据
AR 提供了两种方法来构建 DB 查询:
yii\db\ActiveRecord::find()
yii\db\ActiveRecord::findBySql()
以上两个方法都会返回 yii\db\ActiveQuery 实例,该类继承自yii\db\Query,也就是查询构造器,通过查询构造器产生强大的查询能力。
返回AR实例
有两个快捷静态方法:findOne 和 findAll() 用来返回一个或者一组ActiveRecord实例。前者返回第一个匹配到的实例,后者返回所有。
操作数据
AR 提供以下方法插入、更新和删除与 AR 对象关联的那张表中的某一行:
yii\db\ActiveRecord::save()
yi