توضیحات

در این جلسه به دریافت ویژگی ها و متغیر دسته بندی در پروژه فروشگاه اینترنتی با لاراول می پردازیم.


طراحی وب طراحی سایت پی اچ پی php شی گرایی php oop php mvc mvc پایگاه داده laravel لاراول فروشگاه_اینترنتی

مدرس دوره علی شیخ
مدت دوره 42:39:50
تعداد ویدیو 212

وضعیت دوره : کامل شده
قیمت دوره : 499,000 449,000 تومان

نظرات ارزشمند شما:

برای ارسال نظر ابتدا باید وارد سایت شوید

  • سلام و عرض ادب

    در پارت 102 هنگامی که ما می آییم برای بدست آوردن مقادیر ویژگی های یک دسته روی جدول product-attributes کوئری می زنیم با توجه به اینکه ما category_id را در جدول product-attributes نداریم. خوب ممکن است مثلا دو دسته یک ویژگی یکسان ولی مقادیر متفاوت داشته باشند. مثلا مانتو رنگ آبی و قرمز و پیراهن رنگ سیاه و سبز داشته باشد. آن وقت برای ویژگی رنگ مانتو مقادیر آبی، قرمز، سیاه و سبز برگشت داده می شود که عملا در سیاه و سبز محصولی برای این دسته وجود ندارد. حال لطفا راهنمایی بفرمایید که چه جوری می توان کوئری نوشت که هنگامی که می خواهد روی جدول product-attributes کوئری بزند، category_id را هم در نظر بگیرد؟ یعنی مقادیر یک ویژگی را برای محصولات دسته ای خاص برگرداند نه همه دسته ها.

    متشکرم.

    • سلام وقت بخیر.
      برای اینکار شما میتونید به دو روش کار کنید، مورد اول، با توجه به اینکه product_id را در جدول product_variations داریم توی کوئری چک کنید که هر محصول از این کوئری باید برای فلان دسته بندی (دسته بندی مورد نظر) باشه. مورد دوم، فیلد category_id هم به جدول product_variations اضافه کنید.
      چون دوره آموزشی هست، من پیشنهاد میکنم در ابتدا خودتون سعی کنید این دو مورد را پیاده سازی کنید، اگه نتونستید زیر همین قسمت کامنت کنید تا کد کوئری براتون نوشته و قرار داده بشه

    • سلام وقن بخیر.
      میتوانید به این شکل کوئری بزنید. توی CategoryController در پوشه Home

      $attributes = $category->attributes()->where('is_filter', 1)->with(['values' => function ($query) use ($category) {
      
      $query->whereHas('product', function ($query) use ($category) {
      $query->where('category_id', $category->id);
      });
      }])->get();

      $variation = $category->attributes()->where('is_variation', 1)->with(['variationValues' => function ($query) use ($category) {
      $query->whereHas('product', function ($query) use ($category) {
      $query->where('category_id', $category->id);
      });
      }])->first();

    • سلام خسته نباشید.
      این ارور رو میده

      Class "App\Models\product" not found

    • فقط شما باید رابطه زیر را توی مدل ProductVariation اضافه کنید.

      public function product()
      
      {
      return $this->belongsTo(Product::class);
      }

      اروری که فرستادید احتمالا بخاطر این هست که همچین کلاسی use کرده اید. توی CategoryController چیزی use نباید بشه

    • سلام وقت بخیر .
      من رابطه رو قرار دادم ولی بازم همون ارور رو دارم.
      از طرفی داخل صفحه ارور به رابطه مدل ProductAttribute اشاره میکنه

    • سلام وقت بخیر.
      کوئری توی پروژه لوکال هاست کار میکنه.
      ولی با همون پروژه توی هاست ارور میده. به نظرتون دلیلش چی میتونه باشه؟

    • اگه توی لوکال مشکلی نداشته باشه، نباید توی سرور مشکلی باشه، باید ارور را بررسی کنید.

    • سلام و خسته نباشید.
      میشه لینک زیر رو یه بررسی بکنید ببینید مشکلش چیه؟
      https://moeinramezanipoor.ir/categories/Men-Perfume

    • ارور نوشته که مدل product وجود نداره، بخاطر اینکه p را کوچیک نوشتید بجای بزرگ

  • سلام من به یه خطایی برخورد کردم
    Call to undefined method App\Models\Category::products()
    http://127.0.0.1:8000/categories/cable
    Hide solutions
    Bad Method Call
    Did you mean App\Models\Category::touches() ?
    اینو میگه و لی توی کتگوری متد پروداکت موجود هست

    • سلام وقت بخیر.
      اگه products وجود داره و رابطه هم اوکی باشه نباید مشکلی داشته باشید.شاید کش کرده و نیاز هست کش را پاک کنید با دستورoptimize:clear توی artisan همچنین میتونید composer dump-autoload هم تست کنید