Django自定义列表 models字段显示

Models.py中

class article(models.Model):
    id = models.AutoField(primary_key=True,verbose_name ='编号')
    title = models.CharField(max_length=100,verbose_name ='标题')
    content = models.CharField(max_length=20000,verbose_name ='正文')
    create_time = models.DateTimeField(verbose_name ='创建时间')
    change_time = models.DateTimeField(verbose_name ='修改时间')
    excerpt = models.CharField(max_length=200,blank=True,verbose_name ='摘要')

    type = models.ForeignKey(category,verbose_name ='类别')
    tags = models.ManyToManyField(tags,blank=True,verbose_name ='标签')

    class Meta:
        verbose_name = '文章列表'
        verbose_name_plural = '文章列表'

    def __str__(self):
        return self.title

我们可以在这基础上改进,添加其它字段,从而改变django后台admin 数据库列表字段的显示。 这个页面应该提供便利,比如说:在这个列表中可以看到编号,标题,发布时间。如果能按照编号,发布时间来排序,那就更好了。

为了达到这个目的,我们将为articel模块定义一个ModelAdmin类。 这个类是自定义管理工具的关键,其中最基本的一件事情是允许你指定列表中的字段。 打开admin.py并修改:

from django.contrib import admin
from .models import category,tags,article

# Register your models here.

class articleAdmin(admin.ModelAdmin):
    list_display = ('id','title','create_time','change_time','type') #添加字段显示
    search_fields = ('title','create_time') #添加快速查询栏



admin.site.register(category)
admin.site.register(tags)
admin.site.register(article,articleAdmin)

你可能感兴趣的:(Django博客系统)