3 回答

TA貢獻1831條經(jīng)驗 獲得超9個贊
嘗試這個:
class Author(models.Model):
author_name=models.CharField(max_length=300)
def __str__(self):
return self.author_name
遵循@dirkgroten 所說的“養(yǎng)成始終為所有模型覆蓋str的習(xí)慣”
您也可以list_display在您的方法中使用方法admin.py來實現(xiàn)類似的結(jié)果。創(chuàng)建一個管理類并用于list_display以表格格式呈現(xiàn)模型的字段
Admin.py
from app.models import Artist #<-----Import you artist model
@admin.register(Artist) #<----- admin class should be just below this line
class ArtistAdmin(admin.ModelAdmin):
list_display = ["id", "author_name"]
或者你也可以這樣做:
from app.models import Artist #<-----Import you artist model
class ArtistAdmin(admin.ModelAdmin):
list_display = ["id", "author_name"]
admin.site.register(Artist, ArtistAdmin) #<----register your class also

TA貢獻2039條經(jīng)驗 獲得超8個贊
您可以像這樣覆蓋__str__django 模型類中的方法
class Author(models.Model):
author_name=models.CharField(max_length=300)
def __str__(self):
return self.author_name

TA貢獻1833條經(jīng)驗 獲得超4個贊
這是像您這樣的情況的覆蓋__str__方法的示例。
class Language(models.Model):
language = models.CharField(max_length=32)
class Meta:
app_label = "languages"
ordering = ["-modified"]
def __str__(self):
return f"{self.language} (language {self.id})"
添加回答
舉報