سلام وقت بخیر
من موقعی که میخام یک محصول اضافه کنم تو دیتابیس ذخیره میشه ولی همچین اروری نمایش میده
چیکار باید کرد؟
Argument 1 passed to Modules\Products\Http\Controllers\Admin\ProductController::attachAttributesToProduct() must be an instance of Modules\Products\Entities\Admin\Product, instance of Modules\Products\Entities\Product given, called in C:\xampp\htdocs\laravelpro\Modules\Products\Http\Controllers\Admin\ProductController.php on line 91
این خط 91 که داره ارور میگیره موقع پست کردن
if(isset($validData['attributes']))
$this->attachAttributesToProduct($product, $validData);
و
/**
* @param Product $product
* @param array $validData
*/
protected function attachAttributesToProduct(Product $product, array $validData): void
{
$attributes = collect($validData['attributes']);
$attributes->each(function ($item) use ($product) {
if (is_null($item['name']) || is_null($item['value'])) return;
$attr = Attribute::firstOrCreate(
['name' => $item['name']]
);
$attr_value = $attr->values()->firstOrCreate(
['value' => $item['value']]
);
$product->attributes()->attach($attr->id, ['value_id' => $attr_value->id]);
});
}
سلام. توی متن ارور واضحه
متغیر $product باید آبچکتی از کلاس Modules\Products\Entities\Admin\Product باشه در صورتی که آبجکت کلاس Modules\Products\Entities\Product هست
احتمالا اشتباه use کردید کلاس رو
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟