Laravel 6 - отношения отношения FromHasMorph пустые - PullRequest
1 голос
/ 03 ноября 2019

Я новичок в Laravel Polymorphic Relationship. У меня есть 2 таблицы Supplier и Product и Category для каждой таблицы, поэтому я решил использовать Polymorphic Relationship. Я хочу запросить supplier-category, но его возвращаемый массив empty.

// Моя модель категории

class Category extends Model
{
    protected $fillable = ['categorizable_type', 'categorizable_id'];

    public function categorizable()
    {
        return $this->morphTo();
    }
}

// Моя модель поставщика

class Supplier extends Model
{
    protected $fillable = ['name', 'email', 'phone'];

    public function categories()
    {
        return $this->morphMany(\App\Category::class, 'categorizable');
    }
}

// Моя модель продукта

class Product extends Model
{
    protected $fillable = ['product_code', 'product_name'];

    public function categories()
    {
        return $this->morphMany(\App\Category::class, 'categorizable');
    }
}

// А в SupplierController я хочу запросить categorizable_type

    public function index(Request $request)
    {
        // $product = Category::all();
        $product = Category::whereHasMorph('categorizable', Supplier::class , function($query){
                $query->where('categorizable_type', 'like', '%foo%');
        })->get();

        dd($product);
        // return response()->json($product);
    }

Заранее спасибо ...

1 Ответ

0 голосов
/ 03 ноября 2019

Я заставляю его работать, изменив мой код, как показано ниже

    $product = Category::whereHasMorph('categorizable', Supplier::class)->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...