\think\contractModelRelationInterface

模型关联接口

Summary

Methods
Constants
getRelation()
eagerlyResultSet()
eagerlyResult()
relationCount()
getRelationCountQuery()
has()
hasWhere()
No constants found
No protected methods found
N/A
No private methods found
N/A

Methods

getRelation()

getRelation(array  $subRelation = array(), \Closure  $closure = null) : \think\Collection

延迟获取关联数据

Parameters

array $subRelation

子关联

\Closure $closure

闭包查询条件

Returns

\think\Collection

eagerlyResultSet()

eagerlyResultSet(array  $resultSet, string  $relation, array  $subRelation, \Closure  $closure = null) : void

预载入关联查询

Parameters

array $resultSet

数据集

string $relation

当前关联名

array $subRelation

子关联名

\Closure $closure

闭包条件

eagerlyResult()

eagerlyResult(\think\Model  $result, string  $relation, array  $subRelation = array(), \Closure  $closure = null) : void

预载入关联查询

Parameters

\think\Model $result

数据对象

string $relation

当前关联名

array $subRelation

子关联名

\Closure $closure

闭包条件

relationCount()

relationCount(\think\Model  $result, \Closure  $closure, string  $aggregate = 'count', string  $field = '*', string  $name = null) : integer

关联统计

Parameters

\think\Model $result

模型对象

\Closure $closure

闭包

string $aggregate

聚合查询方法

string $field

字段

string $name

统计字段别名

Returns

integer

getRelationCountQuery()

getRelationCountQuery(\Closure  $closure = null, string  $aggregate = 'count', string  $field = '*', string  $name = null) : string

创建关联统计子查询

Parameters

\Closure $closure

闭包

string $aggregate

聚合查询方法

string $field

字段

string $name

统计字段别名

Returns

string

has()

has(string  $operator = '>=', integer  $count = 1, string  $id = '*', string  $joinType = 'INNER') : \think\db\Query

根据关联条件查询当前模型

Parameters

string $operator

比较操作符

integer $count

个数

string $id

关联表的统计字段

string $joinType

JOIN类型

Returns

\think\db\Query

hasWhere()

hasWhere(mixed  $where = array(), mixed  $fields = null, string  $joinType = '') : \think\db\Query

根据关联条件查询当前模型

Parameters

mixed $where

查询条件(数组或者闭包)

mixed $fields

字段

string $joinType

JOIN类型

Returns

\think\db\Query