django后台管理

本地化

  • 语言和时区的本地化

    • 修改settings.py文件

      #LANGUAGE_CODE = 'en-us'
      LANGUAGE_CODE = 'zh-hans'
      
      #TIME_ZONE = 'UTC'
      TIME_ZONE = 'Asia/Shanghai'
      

创建管理员

  • 执行前需要迁移

    Python manage.py makemigrations
    Python manage.py migrate
    
    • 效果图: django后台管理
  • 创建超级管理员

    python manage.py createsuperuser
    
    • 效果图

      • 执行命令 django后台管理

      • 访问地址
        django后台管理

通过这个界面来管理表里数据

注册模型类

  • 在应用下面的admin.py中注册模型类,告诉django框架根据注册的模型类来生成对应表管理页面。

    • 代码admin.py

      from django.contrib import admin
      from .models import HeroInfo
      from .models import BookInfo
      
      # Register your models here.
      admin.site.register(HeroInfo)
      admin.site.register(BookInfo)
      
      • 访问地址 django后台管理
    • 让条目显示书籍名字

      class BookInfo(models.Model):
          '''图书模型类'''
          #图书名称
          btitle = models.CharField(max_length=20)
          #出版日期
          bpub_date=models.DateField()
          #阅读量
          bread=models.IntegerField(default=0)
          #评论量
          bcomment=models.IntegerField(default=0)
          #删除标记
          isDelete = models.BooleanField(default=False)
          def __str__(self):
              return self.btitle 
      
      • 显示效果
        django后台管理
  • 自定义页面显示栏

    • 自定义模型管理类。模型管理类就是告诉django在生成的管理页面上显示哪些内容。

      • 自定义模型管理类

        class BookInfoAdmin(admin.ModelAdmin):
          """图书模型管理类"""
          list_display = ["id",'btitle']
        
        
        admin.site.register(BookInfo,BookInfoAdmin)
        
      • 显示效果
        django后台管理

      • 注:下面两个注册函数只能用一个,不能同时出现

        admin.site.register(BookInfo,BookInfoAdmin)
        admin.site.register(HeroInfo)
        

相关文章: