Цикл @foreach ничего не показывает - PullRequest
0 голосов
/ 15 июня 2019

Я пытаюсь показать все свои заказы из таблицы заказов, но ничего не отображается, хотя в моей таблице есть регистры.Вот мой контроллер

public function index()
{
    $orders = auth()->user()->orders;
    return view('pagini.my-orders')->with('orders', $orders);

}

Вот мой @ foreach

@foreach ($orders as $order)
 {{$order->id}}
 {{presentPrice($order->billing_total)}}
     @foreach ($order->products as $product)
       {{$product->name}}
       <img src="{{asset($product->image)}}">
     @endforeach
@endforeach

Вот изображение моей таблицы заказов: Изображение таблицы заказов Вот результат яполучил: Результат @ foreach

Вот мои модели - Модель пользователя:

public function orders(){
 return $this->hasMany('App\Orders');
}

- Модель продукта:

 public function orders(){
  return $this->belongsToMany('App\Orders');
}
  • Заказ модели:

    public function user(){ return $this->belongsTo('App\User'); } public function products(){ return $this->belongsToMany('App\Product')->withPivot('quantity'); }

Ответы [ 4 ]

0 голосов
/ 15 июня 2019

Все работало.Я просто сосредоточен на ошибках, и я забыл, что я вошел в учетную запись, у которой нет заказов .. Извините за это, спасибо всем!

0 голосов
/ 15 июня 2019

Чтобы получить orders, связанный с использованием пользователя

$orders = auth()->user()->orders()->get();

И для получения orders с users в качестве отношения используйте

$user = auth()->user()->load('orders');

Теперь вы можете получить orders как $user->orders

0 голосов
/ 15 июня 2019

Если вам нужны заказы, вы можете начать с самих заказов, если в таблице заказов есть столбец user_id

$orders = Orders::where('user_id', auth()->user()->id)->get();
0 голосов
/ 15 июня 2019

Вы должны сначала проверить запрос в Tinker, который вы назвали ERM, правильный или нет.Тогда попробуйте это изменение кода.Вы должны использовать get () или all () в конце.

public function index()
    {
        $orders = auth()->user()->orders->all();
        return view('pagini.my-orders')->with('orders', $orders);

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...