Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 07.09.2018 23:01:23

Получить pivot модель по id

Здравствуйте. Реализована связь многие ко многим.

public function orders(){
    return $this->belongsToMany('App\Order', 'order_user')->withPivot('id', 'qty')->withTimestamps();
}
public function users(){
    return $this->belongsToMany('App\User', 'order_user')->withPivot('id', 'qty')->withTimestamps();
}

Каким образом, зная id pivot модели, получить ее? Или для этого нужно создавать сам файл модели?

Не в сети

#2 08.09.2018 21:49:52

Re: Получить pivot модель по id

public function orders(){
    return $this->belongsToMany('App\Order', 'order_user')->withPivot('id', 'qty')->withTimestamps();}
public function getBYorders($id){
    user::with(orders,function ($query) {
          return $query->where('order_user.id', $id);})
         ->get();
}

Изменено bibimoto (08.09.2018 22:46:15)

Не в сети

#3 08.09.2018 23:18:11

Re: Получить pivot модель по id

Если нужна одна запись.

public function orders($id){
return $this->belongsToMany('App\Order', 'order_user')->withPivot('column1', 'column2')->wcherePivot(id, $id)->withTimestamps();}
public function getBYorders($id){
User::orders($id)->get();
}
Можно и отдельную модель сделать и использовать стандартное "where". А так сама конструкция "pivot" в ларавел подразумевает доступ к промежуточной через основную. 

Изменено bibimoto (08.09.2018 23:23:50)

Не в сети

Подвал раздела