Mohssen A Mohssen نشر 26 فبراير 2022 أرسل تقرير مشاركة نشر 26 فبراير 2022 أريد حساب مجموع الأسعار في متجر إلكتروني مبني بإستخدام جانغو Django، يمكنني القيام بهذه المهمة بإستخدام SQL بالشكل التالي: SELECT SUM(ISNULL(products.title)) FROM products; ولكن لا أعلم كيف أستخدم SUM في جانغو Django، هل توجد طريقة لحساب مجموع أسعار المنتجات بإستخدام QuerySet؟ اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
1 Bassam Ahmed3 نشر 26 فبراير 2022 أرسل تقرير مشاركة نشر 26 فبراير 2022 يمكنك إستخدام SUM لحساب مجموع المنتجات عن طريق الكود التالي : def total_sale(self): total = Sale.objects.aggregate(TOTAL = Sum('amount'))['TOTAL'] return total بالعلم أن " amount " يتم إستبداله بإسم النموذج التي تريد حسابه و يتم إستبدال " Sale " بالنموذج العام الخاص بالمنتجات هناك طريقه اخرى إضافيه في Django لحساب مجموع المنتجات حيثُ يُمكنك إستخدام F و annotate على سبيل المثال : from django.db.models import F tickets = Ticket.objects.all().annotate(total_price=F('total_quantity') * F('price')) for t in tickets: print(t.total_price) كما يمكنك دمج إستخدام F , SUM إذا كنت تريد حساب مجموع المنتجات المتواجده فعلياً في الـ Cart عن طريق التالي : from django.db.models import F, Sum def cart(request): cart = Cart.objects.annotate( price=Sum(F('orderitem__item__price') * F('orderitem__quantity')) ).get( order_user=request.user ) cart.total = cart.price cart.save() فهناك العديد من الطرق 1 اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
Mohssen A Mohssen
أريد حساب مجموع الأسعار في متجر إلكتروني مبني بإستخدام جانغو Django، يمكنني القيام بهذه المهمة بإستخدام SQL بالشكل التالي:
ولكن لا أعلم كيف أستخدم SUM في جانغو Django، هل توجد طريقة لحساب مجموع أسعار المنتجات بإستخدام QuerySet؟
رابط هذا التعليق
شارك على الشبكات الإجتماعية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.