class PurchaseOrder(models.Model):
product = models.ManyToManyField('Product')
vendor = models.ForeignKey('VendorProfile')
dollar_amount = models.FloatField(verbose_name='Price')
class Product(models.Model):
products = models.CharField(max_length=256)
def __unicode__(self):
return self.products
我有那個代碼。不幸的是,錯誤出現在admin.py與ManyToManyField
多對多的列表顯示django
class PurchaseOrderAdmin(admin.ModelAdmin):
fields = ['product', 'dollar_amount']
list_display = ('product', 'vendor')
錯誤說:
'PurchaseOrderAdmin.list_display [0]', '產品' 是一個ManyToManyField 不被支持。
然而,當我把'product'
出list_display
它編譯。那麼如何在list_display
中顯示'product'
而不會給出錯誤?
編輯:也許一個更好的問題將是如何顯示ManyToManyField
在list_display
?
這看起來像一個很好的解決方案。謝謝。雖然,我現在得到一個錯誤,說「列中的空值」product_id「違反非空約束 」任何想法這是什麼意思? – Mdjon26
這可能是一個數據問題。檢查數據庫中的值 – karthikr
由於這會使數據庫癱瘓,因此如何通過select_related()或prefetch_related()來提高性能? – gorus