三、xadmin后台管理
3.1 、xadmin的安装
github下在xadmin源码:下载地址
下载完成之后,解压复制xadmin文件夹
3.2、xadmin配置
(1)新建python package “extra_apps”,把xadmin文件夹复制到extra_apps文件夹下面
(2)把extra_apps右键mark为Source Root
(3)在settings中加入
sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))
(4)配置路由
把admin改成xadmin
#mxonline/urls.py from django.conf.urls import url import xadmin urlpatterns = [ url(r'^xdmin/', xadmin.site.urls), ]
(5)注册app
把下面两个app注册到settings.py的INSTALLED_APPS中
'xadmin', 'crispy_forms',
(6)重新生成数据库
python manage.py makemigrations
python manage.py migrate
(7)将xadmin后台设置成中文街面
LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' USE_I18N = True USE_L10N = True USE_TZ = False
(8)创建超级用户(管理员用户)
python manage.py createsuperuser
根据提示输入账号名、邮箱、密码
(9)运行,登录
python manage.py runserver
访问:http://127.0.0.1:8000/xadmin/
3.3、models注册
- users下创建adminx.py
import xadmin from .models import EmailVerifyRecord, Banner # xadmin中这里是继承object,不再是继承admin 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'] 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(EmailVerifyRecord, EmailVerifyRecordAdmin) xadmin.site.register(Banner, BannerAdmin)
- course下创建adminx.py