thinkphp源码无差别阅读(三十三)
ORM阅读
model/concern/BelongsToMany.php
- 属性:middle、pivotName、pivot、pivotDataName
- 构造方法:__construct
- 设置中间表模型:pivot
- 设置中间表数据名称:name
- 实例化中间模型;newPivot
- 合成中间表模型:hydratePivot
- 延迟获取关联数据:getRelation
- 重载select:select
- 重载paginate:paginate
- 重载find:find
- 根据关联条件查询当前模型:has
- 根据关联条件查询当前模型:hasWhere
- 设置中间表查询条件:wherePivot
- 预载于关联查询:eagerlyResultSet
- 预载于关联查询:eagerlyResult
- 关联统计:relationCount
- 获取关联统计子查询:getRelationCountQuery
- 关联模型预查询:eagerlyManyToMany
- 关联查询:belongsToManyQuery
- 保存:save
- 批量保存:saveAll
- 附加关联的一个中间表数据:attach
- 判断是否存在关联数据:attached
- 解除关联的一个中间表数据:detach
- 数据同步:sync
- 基础查询:baseQuery
model/concern/HasMany.php
- 构造方法:__construct
- 延迟获取关联数据:getRelation
- 预载于关联查询:eagerlyResultSet
- 预载于关联查询:eagerlyResult
- 关联统计:relationCount
- 关联统计子查询:getRelationCountQuery
- 关联预查询:eagerlyOneToMany
- 保存:save
- 创建关联对象实例:make
- 批量保存:saveAll
- 根据关联条件查询当前模型:has
- 根据关联条件查询当前模型:hasWhere
- 基础查询:baseQuery
计划阅读
[ ] framework源码
[ ] orm源码
[ ] helper源码