1、先创建一个Django项目
2、进入虚拟环境安装xadmin
Django2的pip安装
pip install https://codeload.github.com/sshwsfc/xadmin/zip/django2
3、(推荐)也可以直接源文件作为一个app使用。先到github下载源文件,把里面的xadmin文件夹直接放到extra_apps里,
这样的话要安装依赖项:
安装好后,要设置一下settings,在里面添加以下三行代码:
import sys
import xadmin
sys.path.insert(0, os.path.join(BASE_DIR,'extra_apps'))
4、可以使用xadmin了,在settings中添加两个app
5、为了方便展示xadmin,创建一个users的app,写个model用于测试。
from django.contrib.auth.models import AbstractUser
from django.db import models
class UserProfile(AbstractUser):
birthday = models.DateField(verbose_name="生日")
image = models.ImageField(upload_to="users/%Y/%m", verbose_name="用户头像")
gender = models.CharField(max_length=10, verbose_name="性别", choices=(("male", "男"), ("female", "女")))
address = models.CharField(max_length=50, verbose_name="地址")
mobile = models.CharField(max_length=11, verbose_name="手机号")
class Meta:
verbose_name = "用户信息"
verbose_name_plural = verbose_name
def __str__(self):
return self.username
继承并重写用户要在settings设置
AUTH_USER_MODEL = "users.UserProfile"
6、在users app里新建一个adminx.py文件用于注册model。
但user model会自动注册到xadmin里。因此这里就不需要写adminx.py
7、在项目的urls.py配置xadmin
import xadmin
urlpatterns = [
path('xadmin/', xadmin.site.urls),
]
8、启动项目后进入http://127.0.0.1:8000/xadmin/
9、主题修改
假定在users app的adminx.py作全局设定
import xadmin
from xadmin import views
class BaseSetting(object):
enable_themes = True
use_bootswatch = True
xadmin.site.register(views.BaseAdminView, BaseSetting)
进入后台便会多了主题:
10、头部和尾部修改
仍然在users app的adminx.py 设置
import xadmin
from xadmin import views
class BaseSetting(object):
enable_themes = True
use_bootswatch = True
class GlobalSettings(object):
site_title = 'xadmin后台管理系统'
site_footer = 'xadmin'
xadmin.site.register(views.BaseAdminView, BaseSetting)
xadmin.site.register(views.CommAdminView, GlobalSettings)
可以看到头部由Django Xadmin改成了xadmin后台管理系统,尾部由我的公司改成了xadmin