$parent
$parent :
Class Relation
$model : \think\Model
$query : \think\db\Query
getParent() : \think\Model
获取关联的所属模型
getModel() : \think\Model
获取当前的关联模型类的实例
__construct(\think\Model $parent, string $model, string $foreignKey, string $localKey)
架构函数
\think\Model | $parent | 上级模型对象 |
string | $model | 模型名 |
string | $foreignKey | 关联外键 |
string | $localKey | 当前模型主键 |
getRelation(string $subRelation = '', \Closure $closure = null) : \think\Collection
延迟获取关联数据
string | $subRelation | 子关联名 |
\Closure | $closure | 闭包查询条件 |
eagerlyResult(\think\Model $result, string $relation, string $subRelation, \Closure $closure) : void
预载入关联查询
\think\Model | $result | 数据对象 |
string | $relation | 当前关联名 |
string | $subRelation | 子关联名 |
\Closure | $closure | 闭包 |
relationCount(\think\Model $result, \Closure $closure, string $aggregate = 'count', string $field = '*', string $name = '') : integer
关联统计
\think\Model | $result | 数据对象 |
\Closure | $closure | 闭包 |
string | $aggregate | 聚合查询方法 |
string | $field | 字段 |
string | $name | 统计字段别名 |
save(mixed $data, boolean $replace = true) : \think\Model|false
保存(新增)当前关联数据对象
mixed | $data | 数据 可以使用数组 关联模型对象 和 关联对象的主键 |
boolean | $replace | 是否自动识别更新和写入 |
make(array $data = array()) : \think\Model
创建关联对象实例
array | $data |
has(string $operator = '>=', integer $count = 1, string $id = '*', string $joinType = 'INNER') : \think\db\Query
根据关联条件查询当前模型
string | $operator | 比较操作符 |
integer | $count | 个数 |
string | $id | 关联表的统计字段 |
string | $joinType | JOIN类型 |
hasWhere(mixed $where = array(), mixed $fields = null) : \think\db\Query
根据关联条件查询当前模型
mixed | $where | 查询条件(数组或者闭包) |
mixed | $fields | 字段 |