tp5关联查询的问题

tp5模型里面定义了软删除,
在定义关联

$order = Order::get(10);
$order->user //获取订单对应的用户


//在模型中定义
public function user (){
    return $this-hasOne('user','id','user_id');
}

这样查询出来的用户如果被删除 数据表字段中的delete_time 不是null 就不会显示啦

如何让关联方法查询出来的是全部数据 包括软删除的数据

下面这种写法行不通... 还是说我只能自己写关联查询语句???

public function user (){
    return $this-hasOne('user','id','user_id')->withTrashed();
}
阅读 1.9k
1 个回答

使用with闭包预加载查询试试看?下面的这种……

/**
 * 订单模型
 */
class Order {
    public function user (){
    return $this-hasOne('user','id','user_id');
}

/**
 * 用户模型
 */
class User {

}
// 预加载user信息
$order = Order::get(10)->with(['user'=>function($q){$q->withTrashed();}]);
// 获取user信息
$user = $order->user;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题