django的admin站点管理

1.站点简介

  对于某一类网站,  管理界面 是基础设施中非常重要的一部分。 这是以网页和有限的可信任管理者为基础的界面,它可以让你添加,编辑和删除网站内容。 一些常见的例子: 你可以用这个界面发布博客,后台的网站管理者用它来润色读者提交的内容,你的客户用你给他们建立的界面工具更新新闻并发布在网站上,这些都是使用管理界面的例子。

  站点特性:它读取你模式中的元数据,然后提供给你一个强大而且可以使用的界面,网站管理者可以用它立即工作。

1.1django.contrib包

  技术层面上讲,它被称作django.contrib.admin。Django自带很多优秀的附加组件,它们都存在于django.contrib包里

  • django.contrib.admin :管理后台
  • django.contrib.auth :身份验证系统
  • django.contrib.contenttypes :内容类型框架
  • django.contrib.sessions :会话框架
  • django.contrib.messages :消息框架
  • django.contrib.staticfiles :管理静态文件的框架

1.2超级用户界面激活

   我们通过python manage.py createsuperuser 来创建一个admin的用户帐号,否则将不能登入admin(这里我进去了,但是无法添加密码,我在pycharm下的tools/run manage.py Task输入createsuper命令创建超级用户的 ),创建之后,在url上访问127.0.0.1:8000/admin,界面是这样的

输入我们创建的账号和密码,就能进入管理界面,界面如下:  

1.3数据库迁移

我们在模板里面创建的数据表格,如何才能导入进来呢?这里就要通过使用创建应用时生成的admin.py文件了,这里演示下导入方式

admin.py文件下(我创建的应用叫blog)

from blog import models

admin.site.register(models.UserInfo)
admin.site.register(models.Blog)
admin.site.register(models.Category)  

  这样就成功将我们的数据表格同步到前端中了,它可以方便我们在前端中对数据表格进行一系列操作,说白了就是一个可视化操作界面

 1.4数据库迁移进阶配置

上面的配置已经能够显示我们创建的数据列表,但是还是不够编辑操作,我们为了后期操作的便捷,可以在进行相应的编辑

常见的admin.py文件下

from django.contrib import admin
from rbac import models
# Register your models here.

admin.site.register(models.Permission)
admin.site.register(models.Role)
admin.site.register(models.UserInfo)

 效果:

现在我们可以在admin.py在增添配置

from django.contrib import admin
from rbac import models
# Register your models here.

class PermissionAdmin(admin.ModelAdmin):
    list_display = ['title','url']
    list_editable = ['url']

admin.site.register(models.Permission,PermissionAdmin)
admin.site.register(models.Role)
admin.site.register(models.UserInfo)

 效果:

原文地址:https://www.cnblogs.com/LearningOnline/p/9285793.html