大家好,我这里有一个小代码,可以加载最新的用户状态。我的问题是,我如何扩展它,以便当示例用户1和用户2是2的同一部门id时,他们可以看到这些状态。就像facebook一样,当用户1与用户2是朋友时,用户1可以看到用户2的状态,用户2也可以看到用户1的状态。
$user = Auth::user()->load(['statuses' => function($status)
{
$status->latest();
}]);
TIA:)
Department hasMany Users
,我假设User hasMany Statuses
,所以这将起作用:
// Department
public function statuses()
{
return $this->hasManyThrough('Status', 'User');
}
// Status
public function user()
{
return $this->belongsTo('User');
}
// User
public function department()
{
return $this->belongsTo('Department');
}
// usage
$statuses = Auth::user()->department->statuses()->with('user')->latest()->get();