3 回答
TA贡献1831条经验 获得超9个赞
尝试这个:
class Author(models.Model):
author_name=models.CharField(max_length=300)
def __str__(self):
return self.author_name
遵循@dirkgroten 所说的“养成始终为所有模型覆盖str的习惯”
您也可以list_display在您的方法中使用方法admin.py来实现类似的结果。创建一个管理类并用于list_display以表格格式呈现模型的字段
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条经验 获得超7个赞
您可以像这样覆盖__str__django 模型类中的方法
class Author(models.Model):
author_name=models.CharField(max_length=300)
def __str__(self):
return self.author_name
TA贡献1833条经验 获得超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})"
添加回答
举报