[英]Unable to get data on joining Multiple Eloquent Relationships
我想显示Files
表中的id
、 FileName
和FilePath
以及User
表中的id
和name
以及course
表列 - id
、 courseDisplayName
和aboutCourse
。 但它从files
和user
关系中都返回null
。我该如何解决这个问题?
$course=Course::with(['files:id,FileName,FilePath','user:id,name'])
->select('id','courseDisplayName','aboutCourse')
->where('userId',$request->tutorId)
->get();
课程模式
public function files()
{
return $this->belongsTo(Files::class, 'fileId', 'id');
}
public function user()
{
return $this->belongsTo(User::class, 'userId', 'id');
}
这给出了如下输出:
[
{
"id": 20,
"courseDisplayName": "asasasb",
"aboutCourse": null,
"files": null,
"user": null
},
{
"id": 14,
"courseDisplayName": "yuu",
"aboutCourse": "kljkl",
"files": null,
"user": null
}
]
您还必须选择外键fileId
和userId
才能使用files
和user
的关系,因此查询将类似于
$course=Course::with(['files:id,FileName,FilePath','user:id,name'])
->select('id','courseDisplayName','aboutCourse', 'userId', 'fileId')
->where('userId',$request->tutorId)
->get();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.