目录
一、新建虚拟环境
1、运行cmd
输入命令 > mkvirtualenv -p D:\app\Python\Python38\python.exe firstEnv
mkvirtualenv :建虚拟环境命令
-p :根据哪个实体解释器来生成虚拟环境,虚拟环境python版本和 这个目录下的python一样
firstEnv:虚拟环境名字
2、运行之后,就在C:\Users\17343\Envs 生成了一个firstEnv文件夹,这就是python的虚拟环境。
二、创建django项目
1、pycharm创建django项目:File-New Project:
【Create】之后,会等待一会,因为我们选择的是django项目,但是虚拟环境事先没有安装django,所以它会先安装django。
2、新建完成后,目录如下:
在1中勾选【Enable Django Admin】,会在settings.py里加入django的admin app,即使我们不用admin后台管理系统,也需要勾选,因为我们使用xadmin时,会引用admin中的代码。
3、启动项目
报错:File "F:\pythonProject\firstPro1\firstPro1\settings.py", line 57, in <module>
'DIRS': [os.path.join(BASE_DIR, 'templates')]
NameError: name 'os' is not defined
解决:在settins.py中引入os
import os
再次启动:
我们直接访问:http://127.0.0.1:8000/,如下即成功创建了一个django项目:
三、安装xadmin
1、新建一个extra_apps 用来放xadmin源码,或者其他的一些插件
2、从github上拉取xadmin源码,放到extra_apps 下
3、安装 django-crispy-forms 插件 (xadmin依赖这个插件)
pip install django-crispy-forms
4、在settings.py INSTALLED_APPS中增加 crispy_forms 和 xadmin :
在settings.py 引入sys,增加:
sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))
5、在ulrs.py中增加:
path('xadmin/', xadmin.site.urls),
6、配置数据库相关信息
(1)使用mysql,新建一个数据库 firstpro
(2)在settings.py中 DATABASES 配置连接使用firstPro库:
(3)安装Mysql驱动
打开https://www.lfd.uci.edu/~gohlke/pythonlibs/ ,搜索mysqlclient:
我们选择 mysqlclient‑1.4.6‑cp38‑cp38‑win_amd64.whl其中cp38是python38,amd64是指python的 安装包是64位的,不是指操作系统:
下载之后,进入虚拟环境--进入下载的whl的文件夹下--pip install mysqlclient-1.4.6-cp38-cp38-win_amd64.whl
此时mysqlclinet已经安装在了虚拟环境下的site-packages了:
(4)同步数据库
选择Tools- Run manage.py Task:
如果有以上报错,参考:https://blog.csdn.net/weixin_40459875/article/details/112412145
如果报错:SyntaxWarning: "is" with a literal. Did you mean "=="?
'selected': self.lookup_exact_val is '',
根据提示把对应文件对应行数is改成== 即可
问题解决后,正常使用manage.py 做makemigrations 和 migrate 迁移数据库:
可以看到数据库中已经生成了django和xadmin所用的表:
(5)启动项目,访问 http://127.0.0.1:8000/xadmin/
实际上此时没有用户,我们可以用命令新建一个后台管理系统的用户:打开run manager.py task
使用命令 createsuperuser
输入用户名、邮箱、密码。
这个时候就会把数据插入到django自带的auth_user表,可以看到password是已经加密后的数据,这个数据是不可解密的
此时,用刚刚生成的用户名密码再次登录:
(6)设置成中文
页面是英文的,我们改成中文,可以设置settings.py里面的
LANGUAGE_CODE = 'en-us'改成 'zh-hans'
其他的一些配置:
重新启动访问,就可以看到中文界面了:
django+xadmin已经搭建好了,第二篇我们写自己的app