天天看点

Django之admin

 django amdin是django提供的一个后台管理页面,改管理页面提供完善的html和css,使得你在通过Model创建完数据库表之后,

就可以对数据进行增删改查,而使用django admin 则需要以下步骤:

  1、创建后台管理员

  2、配置url

  3、注册和配置django admin后台管理页面

壹丶创建后台管理员

python manage.py createsuperuser 
      

贰丶配置后台管理url  

url(r'^admin/', include(admin.site.urls)),
      

 

叁丶注册和配置Django admin 后台管理页面

1· 在admin中执行如下配置

from django.contrib import admin
   
from app01 import  models
   
admin.site.register(models.UserType)
admin.site.register(models.UserInfo)
admin.site.register(models.UserGroup)
admin.site.register(models.Asset)
      

2·设置数据表名称  

class UserType(models.Model):
    name = models.CharField(max_length=50)
   
    class Meta:
        verbose_name = '用户类型'
        verbose_name_plural = '用户类型'
      

3·打开表之后,设定默认显示,需要早model中作如下配置

class UserType(models.Model):
    name = models.CharField(max_length=50)
   
    def __unicode__(self):
        return self.name
      
from django.contrib import admin
   
from app01 import  models
   
class UserInfoAdmin(admin.ModelAdmin):
    list_display = ('username', 'password', 'email')
   
   
admin.site.register(models.UserType)
admin.site.register(models.UserInfo,UserInfoAdmin)
admin.site.register(models.UserGroup)
admin.site.register(models.Asset)
      

4·为数据表添加搜索功能

from django.contrib import admin
   
from app01 import  models
   
class UserInfoAdmin(admin.ModelAdmin):
    list_display = ('username', 'password', 'email')
    search_fields = ('username', 'email')
   
admin.site.register(models.UserType)
admin.site.register(models.UserInfo,UserInfoAdmin)
admin.site.register(models.UserGroup)
admin.site.register(models.Asset)
      

5·添加快速过滤

from django.contrib import admin
   
from app01 import  models
   
class UserInfoAdmin(admin.ModelAdmin):
    list_display = ('username', 'password', 'email')
    search_fields = ('username', 'email')
    list_filter = ('username', 'email')
       
   
   
admin.site.register(models.UserType)
admin.site.register(models.UserInfo,UserInfoAdmin)
admin.site.register(models.UserGroup)
admin.site.register(models.Asset)
      

更多详见:http://www.cnblogs.com/wupeiqi/articles/5246483.html

     http://www.cnblogs.com/wupeiqi/articles/5237704.html