راکت

ارور livewire در برگرداندن اطلاعات

1 پاسخ

سلام خسته نباشید من دارم از livewire استفاده میکنم

    use WithPagination ;

    public  $pageOne = 1 ;

    public  $article ;
    public $hasMorePages ;
    public function mount()
    {
           $this->article = $this->loadArticles();

    }

    public function render()
    {
        return view('livewire.Front.article.article')
            ->layout('front.layouts.main');
    }

    public function loadArticles()
    {
        $articles = Cache::remember('__Articles__route__' , now()->addDay(), function() {
            return Article::query()->paginate(12 );
        });

        return $articles ;
    }

الان با خطای

Property type not supported in Livewire for property: \[{"currentpage":1,"data":\[{"id":1,"title":"test 2","score":300,"image":  

مواجه شدم چحوری باید هندلش کنم ؟ ممنون

@mahdi.nazari
@Raymond

ثبت پرسش جدید

پاسخ‌ها

1
Javad Karimi
Javad Karimi
@javadkarimii

تخصص: فول استک

Livewire قابلیت پشتیبانی از متغیرهای با نوع پیچیده مانند کلاس‌ها یا مدل‌هایی که از پایگاه داده بارگذاری می‌شوند را ندارد. برای حل این مشکل، شما باید فقط داده‌های مورد نیاز خود را از مدل بیاورید و در یک متغیر ساده ذخیره کنید.

به نظر می‌رسد که شما دارید مقالات را از پایگاه داده بارگذاری می‌کنید و می‌خواهید از آن‌ها در نمایش خود استفاده کنید. یک راه حل برای این مشکل این است که به جای ذخیره کل مدل Article در متغیر article، فقط داده‌های مورد نیاز خود را از آن استخراج و در یک آرایه یا یک آبجکت ساده ذخیره کنید.

یک راه حل می‌تواند این باشد:

  1. تغییر تابع loadArticles به شکل زیر:
public function loadArticles()
{
    $articles = Cache::remember('__Articles__route__', now()->addDay(), function() {
        return Article::query()->select(['id', 'title', 'score', 'image'])->get()->toArray();
    });

    return $articles;
}

در این تغییر، من فقط چهار فیلد id, title, score, و image را از مدل Article استخراج کرده‌ام. شما می‌توانید فیلدهای دیگری را نیز اضافه کنید.

  1. در قسمت نمایش، به جای استفاده از $article به شکل مستقیم، از داده‌های استخراج شده استفاده کنید.
  2. اگر شما به توابع یا خصوصیات دیگری از مدل Article نیاز دارید، بهتر است که آن‌ها را به صورت جداگانه بیاورید و در متغیرهای ساده ذخیره کنید.

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام