• 1400/02/20

بخش ادمین سبد خرید :

سلام استاد

استاد چطوری می تونیم تمام order detail هایی که مربوط به سبد خرید یک کاربر هستند هر چندتا که باشه رو 

تو بخش ادمین داخل order اون شخص به صورت یک لیست نمایش بدیم

مثلا زیر اسم فرد تمام محصولاتی که تو سبد خریدش داررو تو بخش ادمین نشون بدیم؟

  • 1400/02/21
  • ساعت 12:38

سلام دوست من

در مورد نحوه ی customize کردن قالب ادمین در دوره صحبت خواهیم کرد


  • 1400/02/21
  • ساعت 12:43

سلام وقت بخیر

اگر منظورتون با ادمین جنگو هست که باید از StackedInline استفاده کنید سرچ کنید نمونه هاش رو براتون میاره

اونطور که شما میخواید نمیشه ولی خب بهتر از هیچیه

بهترین کار اینه ادمین اختصاصی بنویسید براش که در این صورت هر کاری بخواید با دست باز میتونید انجام بدید یه query میزنید لیست ایتم های سبد خرید کاربر رو به راحتی میارید هر جا میخواید نمایش میدید


  • 1400/02/21
  • ساعت 13:59

ممنون🙏


  • 1400/03/05
  • ساعت 15:59

سلام جناب اردوخانی 

من قسمتی که مربوط به سبد خرید هست مشکل داشتم

وقتی که وارد بخش سبد های خرید کاربران میشم اسامی رو نمیاره البته در محیط http://127.0.0.1:8000 نشان میدهد ولی درون خود سایت اصلی در بخش ادمین نشان داده نمی شود

توی مدل ها هم مثل شما از این کد استفاده کردم

from django.db import models
from django.contrib.auth.models import User
from eshop_products.models import Product


class Order(models.Model):
    owner = models.ForeignKey(User, on_delete=models.CASCADE)
    is_paid = models.BooleanField(verbose_name='پرداخت شده / نشده')
    payment_date = models.DateTimeField(null=True, blank=True, verbose_name='تاریخ پرداخت')

    class Meta:
        verbose_name = 'سبد خرید'
        verbose_name_plural = 'سبدهای خرید کاربران'

    def __str__(self):
        return self.owner.get_full_name()

    def get_total_discount(self):
        amount = 0
        for detail in self.orderdetail_set.all():
            amount += detail.discount * detail.count
        return amount


class OrderDetail(models.Model):
    order = models.ForeignKey(Order, null=True, blank=True, on_delete=models.CASCADE, verbose_name='سبد '
                                                                                                       'خرید')
    product = models.ForeignKey(Product, on_delete=models.CASCADE, verbose_name='محصول')
    discount = models.IntegerField(verbose_name='قیمت محصول')
    count = models.IntegerField(verbose_name='تعداد')

    def get_detail_sum(self):
        return self.count * self.discount

    class Meta:
        verbose_name = 'جزییات محصول'
        verbose_name_plural = 'اطلاعات جزییات محصولات'

    def __str__(self):
        return self.product.title

  • 1400/03/05
  • ساعت 16:06

سلام 

اگه منظورتون اینه که تو بخش ادمین جنگو تو سبد خرید نام کاربر رو نشون نمیده

باید تو همون بخش ادمین جنگو برید قسمت user و نام کاربرو وارد کنید به احتمال زیاد اون فیلدا خالین!


  • 1400/03/05
  • ساعت 16:35

ممنون حل شد


logo-samandehi