django3.0 + python 3.8 + xadmin后台更改
一、版本django3.0 + python 3.8 + xadminxadmin下载地址:https://github.com/vip68/xadmin_bugfix二、下载相关库包django自带的admin后台不是很美观,我们在做程序开发时就会想着替换,xadmin就是比较好的替换。我们去github下载完之后解压,把xadmin这个文件和requirements.txt文件复制到项目根目录
一、版本
django3.0 + python 3.8 + xadmin
xadmin下载地址:https://github.com/vip68/xadmin_bugfix
二、下载相关库包
django自带的admin后台不是很美观,我们在做程序开发时就会想着替换,xadmin就是比较好的替换。
我们去github下载完之后解压,把xadmin这个文件和requirements.txt文件复制到项目根目录下,然后我们在项目的更目录下的终端执行,我的编辑器时pycharm
pip install -r requirements.txt
执行完之后,我们就要去项目中的settings.py中注册xamin等应用模块
INSTALLED_APPS = [
....
# xadmin后台
'xadmin',
'crispy_forms',
'reversion',
]
注册好了之后,我们就将模块中用到的数据迁移到数据库,这里要先保证我们已经有连接数据库了。
python manage.py migrate
这时候我们的控制台会报错如下
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "E:\pyCharmProject\hengda\xadmin\plugins\importexport.py", line 48, in <module>
from import_export.admin import DEFAULT_FORMATS, SKIP_ADMIN_LOG, TMP_STORAGE_CLASS
ImportError: cannot import name 'SKIP_ADMIN_LOG' from 'import_export.admin' (D:\Anaconda\envs\hengda\lib\site-packages\import_export\admin.py)
点击报错的链接: File "E:\pyCharmProject\hengda\xadmin\plugins\importexport.py", line 48, in <module>
之后我们就来到了importexport.py代码中,可以看到有爆红的地方,这是因为在新的xadmin中已经弃用了这个库包的引入,所以我们要替换掉它,
找到报错的代码用到的地方,在def get_skip_admin_log(self)的上面加上test(self)函数代码保存,之后再运行 python manage.py migrate,你会发现这时候已经可以了。
def test(self):
if self.aaa is None:
return ImportMixin(ImportExportMixin).get_skip_admin_log()
else:
return self.aaa
# def get_skip_admin_log(self):
# if self.skip_admin_log is None:
# return SKIP_ADMIN_LOG
# else:
# return self.skip_admin_log
#
# def get_tmp_storage_class(self):
# if self.tmp_storage_class is None:
# return TMP_STORAGE_CLASS
# else:
# return self.tmp_storage_class
三、启动项目
修改项目下的url.py文件中的后台访问路径,导入包之后访问http://127.0.0.1:8000/admin/
urlpatterns = [
path('admin/', xadmin.site.urls),
}
启动项目之后,进入管理后台可以看见出现这个后台证明已经成功了。
这时候我们可以将后台的语言设置成中文。
到项目的setting.py文件:
将:
LANGUAGE_CODE = 'en-us' TIME_ZONE = 'UTC'
修改成:
LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'Asia/Shanghai'
至此,我们的xadmin就修改完成了。
更多推荐
所有评论(0)