Возможно, стоит упомянуть следующую информацию, прежде чем я объясню, что я пытаюсь сделать.
У меня есть 3 таблицы: - пользователи - вакансии - user_vacancy
Вакансия может иметьвладелец, который указан внешним ключом user_id в таблице вакансий.
Многие другие пользователи могут быть членами команды, которым можно назначить эту же вакансию с помощью сводной таблицы user_vacancy
Я пытаюсьперечислить все вакансии для одного пользователя в таблице данных, будь то владелец или член команды вакансии через модель вакансии, мой код выглядит следующим образом:
VacanciesController.php:
public function get_user_vacancies() {
$user = User::find(auth()->id());
$vacancies = Vacancy::with(['team_members' => function($q) use ($user) {
$q->where('user_id', $user->id);
}])->where('user_id', $user->id);
$dataTables = Datatables::of($vacancies);
$dataTables->make(true);
}
Vacancy.php:
public function team_members()
{
return $this->belongsToMany('App\Models\Access\User\User')->withPivot('id', 'created_at', 'updated_at');
}
User.php:
public function team_vacancies()
{
return $this->belongsToMany('App\Vacancy')->withPivot('id', 'created_at', 'updated_at');
}
Я понимаю, что яЯ явно делаю что-то не так, чтобы присоединиться к «вакансиям членов команды» с «вакансиями владельцев», но я не слишком уверен, как поступить правильно.
Я надеюсь, что кто-то мог бы мне помочьили указатья в правильном направлении.