说明:学习完慕课网上的课程「Python升级3.6 强力Django+杀手级Xadmin打造在线教育平台」,成功上线后,做的回顾总结 。感兴趣的也可以自己去入手学习一下
入坑「python」的「django 框架」,「python」版本是 3.6.5,「django」的版本是 2.1.7,「IDE」是「pycharm」付费版(具体的安装请自行 google),使用的数据库是「mysql 8」
1. 新建项目
在「pycharm」中新建项目,选择侧边的「django」,使用默认配置,就可以了,点击创建 ,创建完成后,在下方的「Terminal」输入 pip list 查看一下
项目创建完成,不过需要更新一下「pip」的版本,后面要安装不少依赖包。推荐使用 windows 的「cmd」去执行,pycharm会出错。
2. 安装依赖包,
后台管理程序使用的是「django」的第三方扩展包「xadmin」,由于我们使用的是「django 2」,按装稍微有点麻烦。在虚拟环境的目录下新建一个「requirements.txt」文件,将需要安装的依赖包的信息写入,后面在执行「pip install」的时候可以方便很多。新建后的文件路径「F:\django-review\diandain\venv\Scripts\requirements.txt」这个文件在后面的网站部署时也会用到,文件内容如下:
defusedxml==0.5.0
diff-match-patch==20181111
Django==2.1.7
django-crispy-forms==1.7.2
django-formtools==2.1
django-import-export==1.2.0
django-pure-pagination==0.3.0
django-ranged-response==0.2.0
django-reversion==3.0.3
django-simple-captcha==0.5.10
et-xmlfile==1.0.1
future==0.17.1
httplib2==0.9.2
jdcal==1.4
mysql-connector-python==8.0.15
odfpy==1.4.0
openpyxl==2.6.0
Pillow==5.4.1
protobuf==3.6.1
PyMySQL==0.9.3
pytz==2018.9
PyYAML==3.13
six==1.12.0
tablib==0.12.1
unicodecsv==0.14.1
xlrd==1.2.0
xlwt==1.3.0
你可以将内容复制到你的 txt 文件中。然后在虚拟换环境中执行
执行「activate.bat」进入虚拟环境,退出的时候输入「deactivate」
a. 更新 pip 版本
(venv) F:\django-review\diandain\venv\Scripts>python -m pip install --upgrade pip
Collecting pip
Using cached https://files.pythonhosted.org/packages/d8/f3/413bab4ff08e1fc4828dfc59996d721917df8e8583ea85385d51125dceff/pip-19.0.3-py2.py3-none-any.whl
Installing collected packages: pip
Found existing installation: pip 10.0.1
Uninstalling pip-10.0.1:
Successfully uninstalled pip-10.0.1
Rolling back uninstall of pip
Exception:
Traceback (most recent call last):
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_internal\basecommand.py", line 228, in main
status = self.run(options, args)
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_internal\commands\install.py", line 335, in run
use_user_site=options.use_user_site,
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_internal\req\__init__.py", line 49, in install_given_reqs
**kwargs
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_internal\req\req_install.py", line 748, in install
use_user_site=use_user_site, pycompile=pycompile,
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_internal\req\req_install.py", line 961, in move_wheel_files
warn_script_location=warn_script_location,
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_internal\wheel.py", line 431, in move_wheel_files
generated.extend(maker.make(spec))
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_vendor\distlib\scripts.py", line 403, in make
self._make_script(entry, filenames, options=options)
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_vendor\distlib\scripts.py", line 307, in _make_script
self._write_script(scriptnames, shebang, script, filenames, ext)
File "F:\django-review\diandain\venv\lib\site-packages\pip-10.0.1-py3.6.egg\pip\_vendor\distlib\scripts.py", line 243, in _write_script
laun