一对一关联

2018-03-11 10:33:02 阅读:4 编辑

用户有一个扩展表 profiles, 每个用户对应一个 profile 的一条记录

1).User.php 添加代码
  public function profile ()
    {
      // 要有外键 user_id
       return $this->hasOne (Profile::class)->select (["user_id","phone"]);
    }
  1. 测试代码

    Artisan::command ('linson:query',function (){DB::enableQueryLog ();
    
    // Run your queries
    // 要有 id 主键,不然无法查询 profile
    $res = \App\User::with ('profile')->first (["id"]);
    print_r ($res->toArray ());
    // Then to retrieve everything since you enabled the logging:
    $queries = DB::getQueryLog ();
    foreach ($queries as $i=>$query)
    {Log::debug ("Query $i:" . JSON_encode ($query));
    }
    });