ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
~~~ <?php /** * @qywx */ namespace app\admin\model\qywx; use app\admin\model\qywx\User; use app\common\model\BaseModel; class Gmsglog extends BaseModel { public function user() { return $this->hasOne(User::class, 'userid', 'sender'); } } ~~~ [![复制代码](https://common.cnblogs.com/images/copycode.gif)](javascript:void(0); "复制代码") 1.在当前的模型定义一个函数,用来关联另一个模型 2.hasOne的第一个参数是被关联的模型,第二个参数是外键,第三个参数是主键 ``` `$list``=``$this``->model` `->with([``'user'``=>``function``(``$query``) {` `$query``->field(``'token,userid,name'``);` `}])` `->where(``$where``)` `->order(``$sort``,``$order``)` `->limit(``$offset``,``$limit``)` `->select();` ``` 1.with可以用于一个数组的方式,形成闭包处理字段或者where条件 思考:   1.需要在当前模型定义关联类型   2.调用的时候直接with那个函数名称   3.用数组闭包处理数据