راکت

ارور جنگو

4 پاسخ
ثبت پرسش جدید

پاسخ‌ها

4
علیرضا ماستری
علیرضا ماستری
@alirezamastery

تخصص: برنامه نویس پایتون و جاوااسکریپت

سلام
وقتی که این کوئری مقدار None برمیگردونه:

cart = Cart.objects.filter(owner_id=request.user.id, is_paid=False).first()

مساوی اینه که این کوئری یک کوئری ست خالی برگردونه:

cart = Cart.objects.filter(owner_id=request.user.id, is_paid=False)

پس هر موقع کوئری اول None میشه وارد if بعدی میشیم و این حالت پیش میاد:

cart = <QuerySet []> 

که یک object از مدل Cart نیست و نمیشه از cart.cartdetailset استفاده کرد.
یک راه حل این میتونه باشه:

if cart is None:
    cart = Cart.objects.create(owner_id=request.user.id, is_paid=False)
Ibo Kiani
Ibo Kiani
@abdoki7788

تخصص: Backend developer

بهتر نیست از get به جای filter استفاده کنید؟
چون شما میخواید اون آبجکتی که کاربر گفته رو بگیرید نه اینکه با اون اطلاعاتی که کاربر گفته فیلتر کنید

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

میلاد خسروی
میلاد خسروی
@milwad

تخصص: برنامه نویس بامزه

سلام خسته نباشید
به نظرم باید get کنید این چیزی که من میبینم

Reza
Reza
@rezarezaee

تخصص: Django

چنین اتریبیوتی نداری.
مشکل از مدل هات و فارنکی هایی ک زدی هست (ForeignKey)
احتمالا related_name رو اشتباه تنظیم کردی

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

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