Упрощенная структура (основные поля для понимания):
AppUsers
-id
-nik_name
Bans
-id
-nik_name
Notes
-id
-nik_name
Строю так:
class AppUser extends Model
{
public function ban()
{
return $this->hasOne('App\Ban','nik_name','nik_name');
}
public function note(){
return $this->hasOne('App\Note','nik_name','nik_name');
}
}
Не могу понять как в контроллере вызвать сразу обе связи. По одной получается:
$userApp = AppUser::with('ban')->find($id);
А как сразу обе сразу связать - не понимаю.
Я бы рекомендовал делать связи по id пользователя. Если же вы конечно, точно уверенны что поле nik_name
уникально и есть соответствующая проверка.
Например добавьте поле в таблицу Bans - 'appUsers_id' чтобы не явно связать данную таблицу с таблицей Bans.
Вот примеры для связей:
AppUsers
-id
-nik_name
Bans
-id
-appUsers_id
-nik_name
Notes
-id
-appUsers_id
-nik_name
Отношение тут же будет еще проще:
public function ban()
{
return $this->hasOne(Ban::class);
}
public function note(){
return $this->hasOne(Note::class);
}
Для связи пробуйте вызвать запрос с хелпером with:
$query = AppUsers::with('ban', 'note')->get();
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Всем здравствуйте! Следующая задачаЕсть неважно какой xml файл, но будем рассматривать на примере этого:
Я пытаюсь использовать Payum для приёма платежей на сайте