Django Admin初识

一、网站后台的作用

网站后台通常是相对于动态网站而言,即网站建设是基于数据库驱动的网站。网站后台,有时也称为网站管理后台,是指用于管理网站前台的一些列操作,如:产品、企业 信息的增加、更新、删除等。通过网站管理后台,可以有效的管理网站浏览者查阅的信息。网站的后台通常需要账号及密码等信息的登录验证,登录信息正确 则验证 随后进入网站后台的管理界面进行相关的一系列操作。

二、django Admin的使用

1.激活admin视图

  默认admin视图是打开的

2.创建一个 superuser

在adminLearn工程下创建admin登录用户

root@root:/home/liqian/share/AdminLearn/adminLearn# ./manage.py createsuperuser
Username (leave blank to use 'root'): admin
Email address: admin@163.com
Password: 123456com
Password (again): 123456com
Superuser created successfully.
root@root:/home/liqian/share/AdminLearn/adminLearn#

3.注册models到admin

首先数据库有表可展示

cat models.py

root@root:/home/liqian/share/AutoServerProject# cat Innfotech/models.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import models

# Create your models here.
#测试用的类
class Test(models.Model):
    hotelname = models.CharField('酒店名称', max_length=200, null=True, blank=True)
    serverIP = models.CharField('服务器ip', max_length=20, null=True, blank=True)
    serverid = models.CharField('服务器id', max_length=10)
    projectid = models.CharField('项目id', max_length=10)
    serverclass = models.CharField('分类', max_length=5)
    serverSN = models.CharField('服务器SN', max_length=12)
    serverupdate = models.CharField('更新时间', max_length=30)
    serverdisk = models.CharField('磁盘使用率', max_length=50)

    def __unicode__(self):
  return self.hotelname

cat admin.py

from .models import  Test

class testAdmin(admin.ModelAdmin):

    #fields = ('hotelname')显示可以修改的字段

    #exclude = ('serverSN') 隐藏字段

    #fieldsets 分栏显示字段属性

    fieldsets = (

       ['base',{ 'fields' :('hotelname', 'projectid', 'serverid', 'serverclass')}],

       ['personal',{ 'fields' :( 'serverIP','serverdisk', 'serverupdate', 'serverSN')}]

    )

    #后台可显示的字段

    list_display = ('hotelname', 'projectid', 'serverid', 'serverclass', 'serverIP','serverdisk', 'serverupdate', 'serverSN')

    #增加搜索功能
    search_fields = ('hotelname', 'projectid', 'serverid', 'serverIP', 'serverupdate', 'serverSN')

#注册Test类

admin.site.register(Test, testAdmin) 

4.利用后台实现对站点数据的编辑管理