![798909d7a287b5eb77b0b69b510775bf.png](https://i-blog.csdnimg.cn/blog_migrate/5a525fc00210465b7bff9b5e393a4713.png)
一、环境准备
1、安装Django
pip install django
2、下载并安装Xadmin(位置:https://github.com/sshwsfc/xadmin/tree/django2)
pip install xadmin-master.zip
二、新建Django环境
1、新建Django
django-admin startproject websys
![48de6f1591f2441317d003a47bf939b7.png](https://i-blog.csdnimg.cn/blog_migrate/2f8438aeef9e07a4cb27104e0f3ebd38.png)
2、新建Django相关应用
cd websys
python manage.py startup webpage
![7008a635221c501cf49fe928543b660a.png](https://i-blog.csdnimg.cn/blog_migrate/b15ccdc2cfc095d7c3ff5002d83da78e.png)
三、新建xadmin环境
1、websys中新建extra_apps,将xadmin的zip包所有内容放入extra_apps下。
![a6ccd054cc1f2b68421298e974950f40.png](https://i-blog.csdnimg.cn/blog_migrate/ea5f82746b027d458e42fadb6f7d6f76.jpeg)
2、设置extra_apps目录为Sources Root,在目录下找到requirements.txt,依据内容pip install需要的依赖模块包。
![75c06a569f65b6083e106b43cfe5dfb8.png](https://i-blog.csdnimg.cn/blog_migrate/7a00391cf99ca68a9a26f0fad730d302.jpeg)
![ef28ac8bde149af3b03dc68586c8f25f.png](https://i-blog.csdnimg.cn/blog_migrate/cf2da1567ac912a9097bf51f7d255730.jpeg)
![da4f28fcef8da55529677b9b93fa2570.png](https://i-blog.csdnimg.cn/blog_migrate/b24cddc8b9e77b6a1854cc4ac4ad7208.jpeg)
3、在settings.py文件中分别增加路径、xadmin依赖、设置中文以及时区。
![1149b53264472d26ecd51085bc2a89f9.png](https://i-blog.csdnimg.cn/blog_migrate/678521cace8317422ad5eb5ca6300d8d.jpeg)
![09fed21d5469cb372633d1818ca42c36.png](https://i-blog.csdnimg.cn/blog_migrate/30b1126c9fc8e0f038d7f7eb2351338f.jpeg)
![e2a604101eb9c99f8cfd28233c7518c8.png](https://i-blog.csdnimg.cn/blog_migrate/6665927e6342ec080ff437eebb42a25b.jpeg)
4、在urls.py文件中分别增加xadmin路径,修改为从xadmin启动。
![8e5408322e4314e0c6dca5451174db4d.png](https://i-blog.csdnimg.cn/blog_migrate/925250a4bb33f25d029c01e8ae5c827e.jpeg)
5、建立链接库。(这里因为xadmin是2018年的,没有更新,所以各种报错,但是不要慌,仔细看说明和对应的代码,可以慢慢排掉。我这边遇到的部分排错过程参考五、过程排错)
python manage.py makemigrations
![731a76ce8586c18dad52951162ac35c8.png](https://i-blog.csdnimg.cn/blog_migrate/038c5f12e9b6c5f0b7fd1cba66cac630.jpeg)
排错完成后,再次运行命令,应该如下显示
![826eeadcba0f8886e7a67d6149cfec6e.png](https://i-blog.csdnimg.cn/blog_migrate/bceed99e2993d3fb446d60e3a6211d51.png)
6、生成链接库
![f376805373a487f0d258602ffa696bfd.png](https://i-blog.csdnimg.cn/blog_migrate/8e9b479711003bc4aaafc9ada0dddc41.jpeg)
7、创建xadmin网站的超级管理用户
![d0d5854e2684ba539c23b9ef9774f8b3.png](https://i-blog.csdnimg.cn/blog_migrate/472c26717c57d31f6e48bbb6b3c8c19f.jpeg)
8、运行Django服务
![e6d80c0efcb601f6e024463f4aa6dd6a.png](https://i-blog.csdnimg.cn/blog_migrate/6f13814860fa71c87fca06af3f4374da.png)
四、结果展示
1、浏览器打开
![f81f3b3c49f9660d95fa8cfe3e298b95.png](https://i-blog.csdnimg.cn/blog_migrate/42e19fe12c0b18b48c33c96a47118d8c.png)
2、输入三-7中配置的超级管理用户和密码登录,进入下面页面
![71a6ae4ae6a8bc4dad1eb91f578ea988.png](https://i-blog.csdnimg.cn/blog_migrate/3a2953e633fef3447951bcf0a531d5e1.png)
3、自己新建各种组件和数据
五、过程排错
1、建立链接库时的排错
错误1:缺少six代码
解决:将pythonLibsite-packages下six模块的six.py拷贝到django utils中
![b4489da81c8fcaf89a0f50fd3ab05d5e.png](https://i-blog.csdnimg.cn/blog_migrate/ecb7d426d3601b2b8df602221f74dd5e.jpeg)
![222d2e58e732e4368f5b509038aea94c.png](https://i-blog.csdnimg.cn/blog_migrate/a5108f72b698e934acbff7b4630ec114.jpeg)
错误2:python_2_unicode_compatible报错
解决:从six导入python_2_unicode_compatible
from django.utils.encoding import start_text
from six import python_2_unicode_compatible
![807c4d3f38cc3f5908668687b37664e1.png](https://i-blog.csdnimg.cn/blog_migrate/4bd569371809a8df9b27c9fba4d07f46.jpeg)
![e930e6abef992926cfa5b729c8b7412f.png](https://i-blog.csdnimg.cn/blog_migrate/f10e683747f7819130f6dba374b84690.jpeg)
错误3:pretty_name报错
解决:更换导入位置
from django.forms.utils import pretty_name
![fe0968fd30dd88ff416adea59f016f38.png](https://i-blog.csdnimg.cn/blog_migrate/ecd7943dc1c4b54874ad043a284a27fc.png)
![082bf2558b155792679ab796fe0f410e.png](https://i-blog.csdnimg.cn/blog_migrate/f5b53b5072bb91363aca2f15f8f1f939.jpeg)
错误4:django.contrib.staticfiles.templatetags.staticfiles报错
解决:导入位置报错
from django.templatetags.static import static
![055f89e351001654772c07e1f14eb634.png](https://i-blog.csdnimg.cn/blog_migrate/1ed54a4f0fdc6118aa27a54ad4a80852.png)
![050b6c03cf31a4c544f6e9a17ea5e9be.png](https://i-blog.csdnimg.cn/blog_migrate/ce7a8bf652e764c8e4148f721d459c00.jpeg)
错误5:FieldDoesNotExist
解决:导入位置已经改变
from django.core.exceptions import Fieild.DoesNotExist
![b995e576ddb0bc6d9c5bac76026b9710.png](https://i-blog.csdnimg.cn/blog_migrate/47875db1b9a738cc18a9e0a146ee078c.png)
![fd396c4d76c559859711e373a1c844b2.png](https://i-blog.csdnimg.cn/blog_migrate/49c51ca650507348e43b49f24f8ede5e.jpeg)
错误6:新的位置继续FieldDoesNotExist
解决:直接pycharm打开xadmin文件夹,找到所有FieldDoesNotExist进行修改:1、所有调用FieldDoesNotExist的文件增加“from django.core.exceptions import Fieild.DoesNotExist”, 然后将models.FieldDoesNotExist修改为FieldDoesNotExist。
![86f3eb00f3b6d2e10cbe5bc4e4115a6d.png](https://i-blog.csdnimg.cn/blog_migrate/9e1fc52781d702b26f15165a1184163f.png)
![3d6448adc16e68dbe0840aa45098537f.png](https://i-blog.csdnimg.cn/blog_migrate/8bd260adc395506449ce80a0d37232eb.jpeg)
![9d377e505827b6c4886e31858376d2d1.png](https://i-blog.csdnimg.cn/blog_migrate/d046566f4c648bac3af4a118400bf4c5.jpeg)
2、页面操作报错
错误1:添加小组件时有页面报错
解决:在xadminviewsdashboard.py中找到render函数,在最后新增", renderer=None"
![e3f005f589344bf6f53b7eb44ae17a57.png](https://i-blog.csdnimg.cn/blog_migrate/788d52eb55bf95f517cd7f76e0678059.jpeg)
![24e7b8343a2624bd3e439992748933f3.png](https://i-blog.csdnimg.cn/blog_migrate/20eac3841019c0b01ffb09229adafef5.jpeg)
六、深入参考资料
Xadmin文档(一)_kingken212的专栏-CSDN博客blog.csdn.net![5b45429af0aaaa5c79d08a5480b3783f.png](https://i-blog.csdnimg.cn/blog_migrate/1635158ee3b14337b762c92bcedc1093.png)
![cbe7806f25092fc9faa590605fa01205.png](https://i-blog.csdnimg.cn/blog_migrate/e0a592f54b082d58bc18ca5a22ac8306.png)