Вызов неопределенного отношения [категории] на модели [приложение \ категория]

Привет , я пытаюсь получить категории / продукты отдельно, например, когда я нажимаю на конкретную категорию, отображаются связанные с ней продукты:

но он говорит: вызов неопределенного отношения [категории] на модели [приложение \ категория].

на самом деле мои категории начинаются с "8", когда я набираю 8, чтобы заменить 0, тогда он показывает: неопределенная переменная: CategoriesDetails

  categories = Category::with('categories')->where(['parent_id'=>0])->get();

код ProductsController:

  public function products($url = null){

  $categories = Category::with('categories')->where(['parent_id'=>0])->get();

  $categoryDetails = Category::where(['url' => $url])->first();
  $productsAll = Product::where(['category_id' => $categoriesDetails->id])->get();
  return view('products.listing')->with(compact('categories','categoryDetails','productsAll'));
}

Код модели продукта:

  <?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Product extends Model
{
 public function category(){
 return $this->belongsTo('App\Category');

 }
}

1 ответ

Ваш with должен соответствовать имени функции. with('category') будет работать, но вы, вероятно, должны переименовать его в categories если товар может иметь несколько категорий.

Другие вопросы по тегам