# admin.py
class CustomerAdmin(admin.ModelAdmin):
list_display = ('foo', 'number_of_orders')
# models.py
class Order(models.Model):
bar = models.CharField[...]
customer = models.ForeignKey(Customer)
class Customer(models.Model):
foo = models.CharField[...]
def number_of_orders(self):
return u'%s' % Order.objects.filter(customer=self).count()
ฉันจะจัดเรียงลูกค้าได้อย่างไรขึ้นอยู่กับว่าnumber_of_orders
พวกเขามี?
admin_order_field
ไม่สามารถใช้คุณสมบัติที่นี่ได้เนื่องจากต้องใช้ฟิลด์ฐานข้อมูลเพื่อจัดเรียง เป็นไปได้หรือไม่เนื่องจาก Django อาศัยฐานข้อมูลพื้นฐานในการจัดเรียง การสร้างฟิลด์รวมเพื่อให้มีจำนวนคำสั่งซื้อดูเหมือนจะเกินความจำเป็น
สิ่งที่น่าสนุก: หากคุณเปลี่ยน url ด้วยตนเองในเบราว์เซอร์เพื่อจัดเรียงในคอลัมน์นี้ - มันทำงานได้ตามที่คาดไว้!