Laravel (имеет красноречивое отношение hasManyThrough) - где с OrderBy работает на localhost, а не на сервере - PullRequest
0 голосов
/ 06 января 2020

Laravel (имеет красноречивое отношение hasManyThrough) - где с OrderBy работает на localhost, а не на сервере. На localhost он работает, он сортирует (упорядочивает) хорошо, но на живом сервере не упорядочивает хорошо. На локальном хосте MARIADB на работающем сервере: MYSQL.

publi c индекс функции (Product $ product)

{
 $products = Product::with(['subcategory', 'subcategory.category'])->whereHas('subcategory', function ($query) {
     $query->whereHas('category', function ($query) {
     $query->orderBy('category_id', 'asc');
 }); })->get();

  return view('products.index', compact('products'));
}

Ответы [ 2 ]

1 голос
/ 06 января 2020

измените ваши отношения, как показано ниже:

public function brands()
{
   return $this->hasManyThrough('App\Brand', 'App\Product' 'category_id','id','brand_id');
}
0 голосов
/ 06 января 2020

Попробуйте это

 $products = Product::with(['subcategory', 'subcategory.category'])
    ->has('subcategory.category')->orderBy('category_id', 'asc')->get();
 return view('products.index', compact('products'));
...