Thinkphp Model 关联模型使用实例
实例试用情况:1.有2个Model 用category_id字段关联
2.模型ProductCollection 需要调用 ProductCategory中的数据
其中:ProductCollection写法
/**
* 商品收藏列表
* @param $member_list_id
* @return array
*/
public static function collection_list($member_list_id) {
$where['member_list_id'] = $member_list_id;
$order = ['time' => 'DESC'];
$field = ['product_id','category_id'];
$list = self::paginates($field, $where, $order);
if (!$list->isEmpty()) {
$list->load(['product','productCategory']);
$list->hidden(['product','productCategory']);
}
return $list->toArray();
}
/**
* 关联商品规格 一对一
* @return \think\model\relation\BelongsTo
*/
public function productCategory()
{
$relation = $this->belongsTo(ProductCategory::getModel(),'category_id');
$relation->where('enable', 1);
$relation->order('sort', 'ASC');
return $relation;
}
// 数据库调试模式
'debug' => true,
// 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
'deploy' => 0,
// 数据库读写是否分离 主从式有效
'rw_separate' => false,
// 读写分离后 主服务器数量
'master_num' => 1,
// 指定从服务器序号
'slave_no' => '',
// 是否严格检查字段是否存在
'fields_strict'=> true,
// 数据集返回类型 array 数组 collection Collection对象
'resultset_type' => 'array',
// 是否自动写入时间戳字段
'auto_timestamp' => false,
//自动时间格式转换
'datetime_format'=>false,
// 是否需要进行SQL性能分析
'sql_explain' => false,
多库关联模型必填配置
页:
[1]