django本身自帶一個強大的admin后台管理系統,但是管理起來並不是很方便。這里介紹下xadmin,xadmin是基於bootstrap和admin的一個更強大的后台管理系統
github地址https://github.com/sshwsfc/xadmin.git
第一步安裝
一pip安裝pip install xadmin
二源碼安裝git clone https://github.com/sshwsfc/xadmin.git
cd xadmin
pip install -r requirements.txt安裝所有依賴
建議使用virtualenv建立虛擬環境,因為xadmin的依賴環境可能和本地環境有沖突
第二步使用
在settings中加入
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'users', 'courses', 'organization', 'operation', 'xadmin', 'crispy_forms' ]
修改urls
from django.conf.urls import url from django.contrib import admin import xadmin urlpatterns = [ url(r'^xadmin/', xadmin.site.urls), ]
python manage.py makemigrations創建表文件(其實不需要,本來就有的)
python manage.py migrate應用文件
到這里xadmin就已經可以使用了
第三步改造
新建adminx替換原本的admin將models注冊進入xadmin
#_*_ encoding:utf-8 _*_ import xadmin from xadmin import views from .models import EmailVerifyRecord, Banner class BaseSetting(object): # 主題修改 enable_themes = True use_bootswatch = True class GlobalSettings(object): #整體配置 site_title = 'xxx后台系統' site_footer = ‘’xxx' menu_style = 'accordion' #菜單收起 class EmailVerifyRecordAdmin(object): #后台列表顯示列 list_display = ['code', 'email', 'send_type', 'send_time'] #后台列表查詢條件 search_fields = ['code', 'email', 'send_type'] #后天列表通過時間查詢 list_filter = ['code', 'email', 'send_type', 'send_time'] xadmin.site.register(EmailVerifyRecord, EmailVerifyRecordAdmin) xadmin.site.register(views.BaseAdminView, BaseSetting) xadmin.site.register(views.CommAdminView, GlobalSettings)
修改apps文件
from django.apps import AppConfig class UsersConfig(AppConfig): name = 'users' verbose_name = '用戶信息'
修改__init__文件
default_app_config = "users.apps.UsersConfig"
完成改造
參考
http://www.cnblogs.com/lizitest/p/6919015.html
以及慕課網中django學習課程