۳ مجید صادقی زاده
خطای فراخوانی متد ناشناحته در مدل محصول
جامعه لاراول ایجاد شده در ۱۹ اسفند ۱۳۹۸

با سلام 

در مدل محصول اکسسوری که برای این مدل نوشته شده است از isNotEmpty استفاده شده است ، زمانیکه میخوام به داخل سبد خرید برم خطای زیر رو میدهد

Call to undefined method Illuminate\Database\Eloquent\Relations\MorphMany::isNotEmpty() (View: C:\wamp64\www\notification\resources\views\basket.blade.php)

 

 public function getPriceAttribute($price) //accessor
    {
        $coupons = $this->category->validCoupons();
        if($coupons->isNotEmpty()){
            $discountCalculator = resolve(DiscountCalculator::class);
            return $discountCalculator->discountedPrice($coupons->first() , $price);
        }
        return $price;
    }

 

سلام ... کدی که داخل  فایل couponable هم نوشتید رو ارسال کنید.

مهرداد سامی ۲۱ اسفند ۱۳۹۸، ۰۷:۴۲
<?php
namespace App\Support\Discount\Coupon\Traits;
use App\Coupon;
use Carbon\Carbon;
trait Couponable
{
    public function coupons()
    {
        return $this->morphMany(Coupon::class,'couponable');
    }
    public function validCoupons()
    {
        return $this->coupons->where('expire_time','>',Carbon::now());
    }
}

 

مجید صادقی زاده ۲۱ اسفند ۱۳۹۸، ۱۵:۴۵

گویا مشکل در قسمت دیگه‌ای هستش .. چون اگر تمامی مراحل رو درست رفته باشید نباید با این ارور مواجه بشید .. یک بار دیگه برنامه‌ای که نوشتید رو با سورس کدی که داخل ویدیو پایانی قرار داده شده مقایسه کنید.

مهرداد سامی ۲۱ اسفند ۱۳۹۸، ۱۹:۰۱