xadmin是比Django自帶的admin更加強大的系統
1、安裝xadmin的兩種方式:
方式一:pip install xadmin
方式二:github下載最新的源碼(推薦,因為功能最新)
2、方式一安裝:虛擬環境下
pip install xadmin
python3的環境安裝xadmin時,直接pip install xadmin出現

README.rst這個文件的編碼有問題,可以內容沒什么重要的,可以直接到github上下載安裝包,然后新建一個txt空文件,把文件名改成README.rst,替換原來的文件
https://github.com/sshwsfc/xadmin,替換成功后,把壓縮包放到一個文件夾中,在命令窗口中進入存放壓縮包的文件下,執行pip命令 。
3、在settings.py和urls.py中配置
#settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'users', # 注冊App 'operation', 'courses', 'organization', # 添加以下兩個app配置 'xadmin', 'crispy_forms', ] --------------------------------- #urls.py from django.conf.urls import url from django.contrib import admin import xadmin urlpatterns = [ # url(r'^admin/', admin.site.urls), url(r'^xadmin/', xadmin.site.urls), ]
4、刪除users/admin.py中的代碼,Tools 工具欄運行 run manage.py Task再更新數據表,輸入:(完成后數據庫會有xadmin開頭的表)
makemigrations
migrate
5、重起系統:

方式二安裝:https://github.com/sshwsfc/xadmin下載源碼,解壓把xadmin文件復制到項目的根中新建的extra_apps文件中


1、在setting.py中設置一下路徑:
sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))
2、把EmailVerifyRecord注冊到xadmin后台管理系統:
# 在apps\users中創建一個adminx.py文件 import xadmin from .models import EmailVerifyRecord class EmailVerifyRecordAdmin(object): list_display=['code','email','send_type','send_time'] #控制顯示列數 search_fields=list_display=['code','email','send_type'] #控制搜索框的顯示 list_filter = ['code','email','send_type','send_time'] #控制篩選 xadmin.site.register(EmailVerifyRecord, EmailVerifyRecordAdmin)

list_display=['code','email','send_type','send_time']作用是

search_fields=list_display=['code','email','send_type']作用是

list_filter = ['code','email','send_type','send_time'] 篩選作用

3、在users/models.py中重載EmailVerifyRecord類型的__str__方法
def __str__(self): return '{0}({1})'.format(self.code, self.email)

同理注冊Banner
class BannerAdmin(object): list_display = ['title', 'image', 'url', 'index','add_time'] # 列表顯示 search_fields = ['title', 'image', 'url', 'index'] # 搜索 list_filter = ['title', 'image', 'url', 'index','add_time'] # 篩選 xadmin.site.register(Banner, BannerAdmin)
