我的应用程序中的用户可以创建自己的组。 groups/show.blade.php
上显示一个网上论坛,其他用户可以加入该网上论坛。
我想显示所有加入每个小组的人的名单。
在groups/show.blade.php
页上,我有以下内容
@if ($joinedUsers)
@foreach($joinedUsers as $joinedUser)
{{$user->name}}
@endforeach
@else
@endif
@endsection
我得到的错误是:
未定义变量:group_joined_user
这很奇怪,因为在我的Group
模型中,
* Get the users that joined the group.
*/
public function joinedUsers()
{
return $this->belongsToMany(User::class, 'group_joined_user', 'group_id', 'user_id')
->withTimestamps();
}
还有我的GroupController.php
public function show($id)
{
$group = Group::with('joinedUsers')->where('id', $id)->first();
return view('groups.show', compact('group'));
}
我的路线中有这个
Route::resource('groups', 'GroupsController');
我是Laravel的新手,所以这里可能缺少明显的东西吗?
答案 0 :(得分:0)
您仅定义了$group
变量。 joinedUsers
是关系,并且您从未在任何地方将其定义为变量。你必须这样做
@foreach($group->joinedUsers as $user)
{{$user->name}}
@endforeach