一对一关联
模型关联用于定义不同模型之间的关系,简化多表查询操作。
一对一关联语法说明
一对一关联的基本语法格式如下:
php
/**
* 关联描述
* @return \think\model\relation\[关联类型]
*/
public function [关联名称]()
{
return $this->[关联方法]('目标模型类名', '外键', '主键');
}例如:一对一关联
php
/**
* 关联默认商品规格
* @return \think\model\relation\HasOne
*/
public function goodsSku()
{
return $this->hasOne(GoodsSku::class, 'goods_id', 'goods_id');
}语法要点:
方法名即为关联名称,使用驼峰命名法
返回类型通常为
\think\model\relation\*系列类关联方法:
hasOne: 一对一关联(当前模型有一个关联模型)关联参数:
第一个参数(必须):关联的模型类名(完整命名空间)
第二个参数(可选):关联模型的外键。默认的外键规则是当前模型名(不含命名空间,下同)+_id
第三个参数(可选):当前模型的主键,默认会自动获取也可以指定传入
使用方式:
php
$search_model = $this->model->field($field)->withJoin([ 'goodsSku' => [ 'sku_id', 'sku_name', 'sku_image', 'sku_no' ] ])如图: 
