اذهب إلى المحتوى

السؤال

نشر (معدل)

مرحبا جميعا اقوم بانشاء مشروع جانغو لمتجر ملابس  ووصلت لجزئية تغيير كمية المنتج داخل السلة واواجه بعض المشاكل هنا ارجو مساعدتي ان استطعتم ذلك 

انشئت زر زيادة / نقصان للكمية واحاول تفعيله بواسطة جافا سكريبت لكنه لا يعمل في السلة على الرغم من انه لدي نسخة منه بصفحة تفاصيل المنتج وهي تعمل بشكل مثالي حيث ان الكميات لا تتغير بشكل ديناميكي عند النقر على الزر ولا يتم حفظ التغيير لقاعدة البيانات حيث انه  بمجرد تحديث الصفحة تختفي التغييرات كما ان الكمية بالمخزون تصبح سالبة بمجرد النقر على اي زر ارفقت مقطع فديو يوضح المشكلة بشكل اكبر .

ارجو المساعدة من فضلكم 🙏🙏🙏🙏 

================================

دالة صفحة السلة في السطر 447 ملف view.py مجلد store

دالة تحديث السلة بالسطر 593 ملف view.py مجلد store

دالة جافا سكريبت داخل ملف main.js سطر 610

النماذج الخاصة بالسلة في ملف models.py داخل مجلد store سطر 262

قالب الزر موجود داخل ملف cart.html سطر 80

===============================

@محمد عاطف17

Fikra-Project.zip

تم التعديل في بواسطة محمود الساعور2

Recommended Posts

  • 1
نشر

الخطأ لديك أنك تقوم بإضافة إستماع للحدث مرتين على نفس الزر وهذا لأنك كتبت الكود مرتين مرة في سطر 432 وهذا للصفحة الخاصة بالمنتج ومرة في سطر 652 للصفحة الخاصة بال cart و أيضا بالنسبة لزر الحذف يوجد الكود مرتين أيضا.

وستجد أن الكود في الصفحتين لن يعمل إذا كان الإثنين معا . فإذا ألغيت أحدهما سيعمل في صفحة والأخرى لا وهكذا ، أى إذا ألغيت الكود في سطر 432 ستعمل صفحة ال cart وإذا ألغيت الكود في سطر 652 ستعمل صفحة المنتج.

والحل إما فصل الكود إلى ملفين وتقوم بإستيراد الملف الخاص لكل صفحة . وإما إضافة id مختلف لكل زر وتقوم بإضافة حدث مختلف لكل زر .

والأفضل هو فصل الكود إلى ملفين كل صفحة لها الملف الخاص بها حتي لا تحدث مشاكل غير متوقعه كتلك المشكلة.

  • 0
نشر
بتاريخ 2 ساعة قال محمد عاطف17:

الخطأ لديك أنك تقوم بإضافة إستماع للحدث مرتين على نفس الزر وهذا لأنك كتبت الكود مرتين مرة في سطر 432 وهذا للصفحة الخاصة بالمنتج ومرة في سطر 652 للصفحة الخاصة بال cart و أيضا بالنسبة لزر الحذف يوجد الكود مرتين أيضا.

وستجد أن الكود في الصفحتين لن يعمل إذا كان الإثنين معا . فإذا ألغيت أحدهما سيعمل في صفحة والأخرى لا وهكذا ، أى إذا ألغيت الكود في سطر 432 ستعمل صفحة ال cart وإذا ألغيت الكود في سطر 652 ستعمل صفحة المنتج.

والحل إما فصل الكود إلى ملفين وتقوم بإستيراد الملف الخاص لكل صفحة . وإما إضافة id مختلف لكل زر وتقوم بإضافة حدث مختلف لكل زر .

والأفضل هو فصل الكود إلى ملفين كل صفحة لها الملف الخاص بها حتي لا تحدث مشاكل غير متوقعه كتلك المشكلة.

اشكرك صديقي

هل يمكنك ارسال مجلد المشروع بعد التعديل او الملفات التي قمت بتعديها حتى عمل المشروع لديك من فضلك؟

  • 1
نشر
بتاريخ 14 دقائق مضت قال محمود الساعور2:

اشكرك صديقي

هل يمكنك ارسال مجلد المشروع بعد التعديل او الملفات التي قمت بتعديها حتى عمل المشروع لديك من فضلك؟

نعم بالطبع هذا ملف static\javascript\main.js و ملف templates\store\cart.html لقد قمت بإرفاقهم لك بعد التعديل .

 

cart.html main.js

  • 0
نشر
بتاريخ 23 دقائق مضت قال محمد عاطف17:

نعم بالطبع هذا ملف static\javascript\main.js و ملف templates\store\cart.html لقد قمت بإرفاقهم لك بعد التعديل .

 

cart.html 14.11 kB · 1 تنزيل main.js 27.92 kB · 1 تنزيل

صديقي لا يزال هنالك مشكلة وهي ان الزر يعمل على اول منتج بالسلة فقط ولايعمل على باقي المنتجات هل يمكن مساعدتي من فضلك في معرفة السبب؟ 

  • 0
نشر
بتاريخ On 23‏/9‏/2024 at 19:37 قال محمد عاطف17:

الخطأ لديك أنك تقوم بإضافة إستماع للحدث مرتين على نفس الزر وهذا لأنك كتبت الكود مرتين مرة في سطر 432 وهذا للصفحة الخاصة بالمنتج ومرة في سطر 652 للصفحة الخاصة بال cart و أيضا بالنسبة لزر الحذف يوجد الكود مرتين أيضا.

وستجد أن الكود في الصفحتين لن يعمل إذا كان الإثنين معا . فإذا ألغيت أحدهما سيعمل في صفحة والأخرى لا وهكذا ، أى إذا ألغيت الكود في سطر 432 ستعمل صفحة ال cart وإذا ألغيت الكود في سطر 652 ستعمل صفحة المنتج.

والحل إما فصل الكود إلى ملفين وتقوم بإستيراد الملف الخاص لكل صفحة . وإما إضافة id مختلف لكل زر وتقوم بإضافة حدث مختلف لكل زر .

والأفضل هو فصل الكود إلى ملفين كل صفحة لها الملف الخاص بها حتي لا تحدث مشاكل غير متوقعه كتلك المشكلة.

مرحبا  صديقي @محمد عاطف17 

في الواقع غيرت الدالة بالكامل تغيرا جذريا لكثرة الاخطاء بالدالة القديمة وهي تعمل بشكل رائع الان وبدون اي مشاكل لكن في ال console يظهر لدي خطأ على الرغم ان الكود يعمل جيدا واستطعت ان اقوم بحل هذا الخطأ لكن بمجرد حله يختفي الخطأ من الكونسول ويتوقف الكود عن العمل اعتذر لأنني ازعجتك بكثرة اسئلتي لكن هل يمكنك مساعدتي بمعرفة السبب؟😅

===================================

هنا الكود يعمل جيدا لكن تظهر اخطاء بالكونسل 

الكود موجود في ملف views.py سطر 622 

 # إرجاع الكمية الجديدة والمخزون المتبقي
            return JsonResponse({
                'new_qty': new_qty,
                'stock_quantity': product_variation.get_stock_quantity()
            })

هنا الكود لايعمل لكن لايوجد اخطاء بالكونسل

            # إرجاع الكمية الجديدة والمخزون المتبقي
            return JsonResponse({
                'new_qty': new_qty,
                'stock_quantity': cart_item.get_stock_quantity()
            })

 

Fikra-Project.zip

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...