我有category_content
,contents
和users
个表,每个contents
属于许多category_content
和category_content
属于许多{{1}每个contents
属于一个用户,一个用户在contents
表上有很多帖子
contents
通过以下代码,我可以找到类别ID为class Contents extends Model
{
...
public function categories()
{
return $this->belongsToMany(ContentCategories::class);
}
public function user()
{
return $this->belongsTo(User::class);
}
}
class ContentCategories extends Model
{
...
public function contents()
{
return $this->belongsToMany(Contents::class);
}
}
class User extends Authenticatable
{
...
public function content()
{
return $this->hasMany(Contents::class);
}
}
7
现在,问题在这里,如何在此查询中获得帖子所有者哪些内容属于哪个用户
我测试了这段代码,但是我收到了错误:
$nodejsContents = ContentCategories::find('7')->contents;
错误:
$nodejsContents = ContentCategories::find('7')->contents->user;
"Undefined property: Illuminate\Database\Eloquent\Builder::$contents"
迁移:
contents_categories
答案 0 :(得分:2)
user
在contents
范围内,因此请使用闭包
$nodejsContents = ContentCategories::has('contents')->with(['contents' => function($query){
$query->with('user')->get();
}])->find('7');
答案 1 :(得分:1)
$amount = (int)($amount*100);
ContentCategories::find('7')->contents
内容将返回一个集合。因此,您可以遍历集合以获取belongsToMany
或
Contents