У меня есть схема базы данных фильмов (только данные, относящиеся к вопросу):
<strong>persons</strong> <em>(yes, I used "persons" instead of "people"...)</em>
id
name
<strong>roles</strong>
id
name
<strong>roles_persons</strong>
person_id
role_id
И соответствующие модели, определяющие отношение многие ко многим:
class Person extends Model
{
protected $table = 'persons';
public function roles(){
return $this->belongsToMany('App\Role', 'roles_persons')->withTimestamps();
}
}
class Role extends Model
{
public function persons(){
return $this->belongsToMany('App\Person', 'roles_persons')->withTimestamps();
}
}
Все хорошопока что.
Одна из ролей - «директор».
Теперь я хочу добавить таблицу «Фильмы», которая имеет внешний ключ с идентификатором директора (человека сроль "директора").
<strong>films</strong>
id
title
director_person_id
В методе создания FilmsController я пытаюсь отправить в представление список с директорами (для отображения выбранного входа, чтобы выбрать один).
Какой правильный способ сделать это?
class FilmsController extends Controller
{
public function create()
{
$directorRole = Role::find('1');
$directorsToChoose = Person:: ???
return view('films.create')->with('directors', $directors);
}
}
Я видел этот связанный вопрос , но я не понимаю, как его применить в этом случае.
Спасибо.