0
我有這個model.py:Django管理list_display模型方法
class Topping(models.Model):
name = models.CharField(max_length=32)
def __str__(self):
return self.name
class Base(models.Model):
name = models.CharField(max_length=32)
slug = models.SlugField(primary_key=True)
class Advanced(models.Model):
toppings = models.ManyToManyField(Topping)
class Mymodel(Base, Advanced):
...
def toppings_list(self):
list_top = Advanced.toppings
return list_top
我想說明的配料列表中(最好是格式化的,所以只打頂模型領域name
列表)在我的管理,所以:
class MymodelAdmin(admin.ModelAdmin):
#list_display = (..., model.Mymodel.toppings_list(), ...) #Error: missing 1 required positional argument: 'self'
#list_display = (..., model.Mymodel.toppings_list(self), ...) #Error: self is not definited
list_display = (..., model.Mymodel.toppings_list, ...) #Gibberish: <django.db.models.fields.related_descriptors.ManyToManyDescriptor object at 0x0387FFD0>
只有最後一個工作,但沒有提供任何有用的東西。
我想這太(我想格式化列表前顯示):再次
class MymodelAdmin(admin.ModelAdmin):
mylist=model.Mymodel.toppings_list #I don't change nothing for now
#mylist=[t for t in model.Mymodel.toppings_list] #Error: 'function' object is not iterable
list_display = ('mylist') #core.Topping.None
,最後一個工作,但沒有給出任何有用的(也摘心不無)
謝謝