站点管理

  • 站点 : 分为内容发布公共访问两部分
  • 内容发布 的部分由网站的管理员负责查看、添加、修改、删除数据
  • Django能够根据定义的模型类自动地生成管理模块
  • 使用Django的管理模块, 需要按照如下步骤操作 :
    • 1.管理界面本地化
    • 2.创建管理员
    • 3.注册模型类
    • 4.发布内容到数据库
    • 5.自定义站点管理页面

1.管理界面本地化

  • 本地化是将显示的语言、时间等使用本地的习惯,这里的本地化就是进行中国化.
  • 中国大陆地区使用简体中文, 时区使用亚洲/上海时区, 注意这里不使用北京时区.
  • 本地化前

  • 本地化后

2.创建管理员

  • 创建管理员的命令 :

      python manage.py createsuperuser
    
  • 按提示输入用户名、邮箱、密码

  • 登陆站点 : http://127.0.0.1:8000/admin

    • 需要服务器是启动状态

  • 登陆站点成功

    • 站点界面中没有书籍和人物管理入口,因为没有注册模型类

3.注册模型类

  • 应用admin.py文件中注册模型类

    • 需要导入模型模块 : from models import *

  • 注册模型后

注册模型成功后, 就可以在站点管理界面方便快速的管理数据.

4.发布内容到数据库

  • 发布内容后,优化模型类展示

    class BookInfo(models.Model):
      """定义书籍信息模型类"""
    
      name = models.CharField(max_length=10)
    
      def __str__(self):
          """将模型类以字符串的方式输出"""
          return self.name
    

5.自定义站点管理页面

  • 自定义站点管理界面前

  • 如果想在站点界面中展示详细的字段信息,需要自定义管理页面

  • 即 在应用admin.py文件中需要重新注册模型类

    • 新建类继承自admin.ModelAdmin
    • 重写list_display,指定需要展示的字段
    • PeopleAdmin注册到站点

      # 自定义站点管理界面的类 : 重写list_display属性
      class PeopleAdmin(admin.ModelAdmin):
        list_display = ['id','name','gender','book']
      
      # 注册人物模型
      admin.site.register(PeopleInfo,PeopleAdmin)
      
  • 自定义站点管理界面后