开发环境搭建
1、MAC OS 10.13.6 2、gitlib 3、PyCharm 2017.2.4 4、Navicat 12.0.16 5、WebStorm 2016.2.3
一、Pycharm安装
这里就不细说,请参见www.google.com
二、项目工程创建
2.1 pyenv安装
2.2 python项目虚拟环境创建
# 创建项目目录 cd /Users/kenwu/Desktop/pythonsyscode mkdir Higoleme && cd Higoleme pwd /Users/kenwu/Desktop/pythonsyscode/Higoleme # 创建虚拟环境 pyenv virtualenv 3.6.3 Higoleme3.6.3 # 激活虚拟环境 pyenv activate Higoleme3.6.3 # 安装pipenv pip install pipenv # 安装Django pipenv install django # 安装djangorestframework pipenv install djangorestframework # 安装markdown pipenv install markdown # 安装django-filter pipenv install django-filter
2.3 git项目代码管理
1、使用gitlab创建工程Higoleme。
2、工具:GitKraken,进行前端代码管理
3、初始化git工程
4、绑定远程仓库
5、第一个commit
2.4 Vue 开发环境搭建
1、WebStorm 2、node.js 3、cnpm:安装参见:https://www.cnblogs.com/BinXu/p/6050850.html
2.5 创建基础工程
# 创建项目Higolemebackend ~/Desktop/pythonsyscode/Higoleme(master*) » django-admin startproject Higolemebackend # 创建应用users ~/Desktop/pythonsyscode/Higoleme(master*) » django-admin startapp users
选择解释器:
配置工程启动server:
运行工程:
![]()
2.6 修改某些配置
因为django中database默认为sqllite,现修改为mysql
1、 修改settings.py中databases配置:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'Higoleme', 'USER': 'root', 'PASSWORD': '1q2w3e4r', 'HOST': '127.0.0.1', 'OPTIONS': {'init_command': 'SET storage_engine=INNODB'}, } }
2、本地创建数据库Higoleme
3、安装mysql驱动
pipenv install mysqlclient
重启工程报错
django.db.utils.OperationalError: (1193, "Unknown system variable 'storage_engine'")
修改settings.py中databases配置:
'OPTIONS': {'init_command': 'SET default_storage_engine=INNODB'},
4、 安装图片处理包
pipenv install pillow
5、整理项目结构
1、apps包保存所有的app,将users移入 2、extra_apps包保存本地安装的源码,修改源码。 3、新建文件夹:media 存放上传的图 4、db_tools数据库的初始化等
右键将apps&extra_apps标记为sources root:这样才能从保重至上而下正确引入函数。
当前目录结构:
sys.path.insert(0, BASE_DIR) sys.path.insert(0, os.path.join(BASE_DIR, 'apps')) sys.path.insert(0, os.path.join(BASE_DIR, 'extra_apps'))
6、划分apps
(Higoleme3.6.3) ------------------------------------------------------------ ~/Desktop/pythonsyscode/Higoleme/Higolemebackend/apps(master*) » django-admin startapp goods (Higoleme3.6.3) ------------------------------------------------------------ (Higoleme3.6.3) ------------------------------------------------------------ ~/Desktop/pythonsyscode/Higoleme/Higolemebackend/apps(master*) » django-admin startapp trade (Higoleme3.6.3) ------------------------------------------------------------ ~/Desktop/pythonsyscode/Higoleme/Higolemebackend/apps(master*) » django-admin startapp user_operation (Higoleme3.6.3) ------------------------------------------------------------ ~/Desktop/pythonsyscode/Higoleme/Higolemebackend/apps(master*) » ll total 8 -rw-r--r-- 1 kenwu staff 184B 9 20 14:31 __init__.py drwxr-xr-x 9 kenwu staff 288B 9 20 15:27 goods drwxr-xr-x 9 kenwu staff 288B 9 20 15:27 trade drwxr-xr-x 9 kenwu staff 288B 9 20 15:27 user_operation drwxr-xr-x 9 kenwu staff 288B 9 20 11:33 users
7、 设置media的保存路径
MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
三、引入extra_apps
3.1 下载DjangoUeditor
1、python3: https://github.com/twz915/DjangoUeditor3/ (直接下载zip) 2、将我们下载好的zip文件解压打开后找到 DjangoUeditor将DjangoUeditor直接拷贝到我们项目的extra_apps中
3.2 下载xadmin
1、https://github.com/sshwsfc/xadmin.git 切换分支Django2,下载源文件xadmin-django2。 2、将我们下载好的zip文件解压打开后找到xadmin,直接拷贝到我们项目的extra_apps中
通过pycharm 选中extra_apps文件夹点击鼠标右键选中菜单mark directory as 选择 sources root 。
3.3 配置引入
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'users', 'goods', 'user_operation', 'trade', 'xadmin', 'DjangoUeditor', ]
发现报错1:
from future.utils import iteritems ModuleNotFoundError: No module named 'future'
使用pipenv 安装future:
pipenv install future
发现报错2:
ModuleNotFoundError: No module named 'crispy_forms'
使用pipenv 安装
pipenv install django-crispy-forms
发现报错3:
ModuleNotFoundError: No module named 'django.contrib.formtools'
使用pipenv安装:
pipenv install django-formtools
发现报错4:
ModuleNotFoundError: No module named 'httplib2'
使用pipenv安装:
pipenv install httplib2
发现报错5:
ModuleNotFoundError: No module named 'six'
使用pipenv安装:
pipenv install six
发现报错6:
ModuleNotFoundError: No module named 'import_export'
使用pipenv安装:
pipenv install django-import-export