每当我要附加一名老师/学生时,它就会显示所有用户,而不是显示具有模型类中分配的必需role_id的用户。
型号:
namespace App;
use App\User;
use Illuminate\Database\Eloquent\Model;
class SchoolClass extends Model
{
public function teachers () {
return $this->belongsToMany(User::class)->where('role_id', 1);
}
public function students () {
return $this->belongsToMany(User::class)->where('role_id', 3);
}
}
在该SchoolClass的资源中,我具有以下字段:
public function fields(Request $request)
{
return [
ID::make()->sortable(),
Text::make('name'),
BelongsToMany::make('Teachers', 'teachers', 'App\Nova\User'),
BelongsToMany::make('Students', 'students', 'App\Nova\User'),
];
}
解决这个问题的正确方法是什么?查看schoolschool资源之一时,它的确在“教师和学生”下列出了正确的用户,只有当我要将用户附加到这些字段之一时,它才会列出所有用户。