详见:项目开发流程
详见:python之pip换源
1 pip3 install pymysql 国外很慢 2 pip3 install pymysql -i 地址 3 配置,以后pip3 install全走配好的源 -来到C:\Users\oldboy\AppData\Roaming %APPDATA% -创建一个pip文件夹 -新建一个文件pip.ini -写入 [global] index-url = http://pypi.douban.com/simple [install] use-mirrors =true mirrors =http://pypi.douban.com/simple/ trusted-host =pypi.douban.com
详见:python虚拟环境的搭建
1 不同的项目依赖不同的模块版本,不能共用一套环境,虚拟环境 2 在系统的python环境中安装 -下载 pip3 install virtualenv pip3 install virtualenvwrapper-win -修改环境变量 WORKON_HOME: D:\Virtualenvs -python安装路径,scripts文件下执行virtualenvwrapper.bat 3 使用: -workon #列出有的虚拟环境(aaa) -workon aaa #使用这个虚拟环境 -mkvirtualenv -p python3 luffy # 创建虚拟环境 -rmvirtualenv 虚拟环境名字 # 删除虚拟环境 4 安装django环境 pip install django==2.2.2 5 基于虚拟环境创建项目(不要再pycharm中选择虚拟环境了)
详见:重构目录以及配置
# 在控制台直接指向项目 python manage.py runserver ---》manage.py的内容要改 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.dev') # 项目上线,走的不是manage.py---》uwsgi.py,需要修改 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.dev') # 国际化 # 创建app:startapp在哪执行,就把app创建在哪 python ../../manage.py startapp home # 注册app
详见:luffy数据库配置
# 项目依赖的数据库,luffyapi -create database luffyapi; # 创建数据库用户,并且授予luffyapi这个库的权限 -grant all privileges on luffyapi.* to 'luffyapi'@'%' identified by 'Luffy123?'; -grant all privileges on luffyapi.* to 'luffyapi'@'localhost' identified by 'Luffy123?'; -flush privileges; # 项目连接 -setting中配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'luffyapi', 'USER':'luffyapi', 'PASSWORD':'Luffy123?', 'HOST':'127.0.0.1', 'PORT':3306 } } import pymysql pymysql.install_as_MySQLdb() -用pymysql连接数据库 -django超过:2.0.7 -需要改源码,两个地方
详见:User表配置
# 用户要基于auth的user表,必须在数据库迁移命令之前操作好,后期如果再做,会出错 -把所有app下的迁移文件,全删除 from django.contrib import auth -admin,auth app下的迁移文件删除 -删库(数据一定要导出来),重新迁移 (自己尝试一下) # 继承AbstractUser,增加两个字段,telephone,icon(依附于pillow) # 在setting中配置 MEDIA_URL='/media/' MEDIA_ROOT=os.path.join(BASE_DIR,'media') #现在的BASEDIR是luffyapi下的luffyapi AUTH_USER_MODEL='user.user' # 路由,打开media文件夹 from django.views.static import serve from django.conf import settings re_path('media/(?P<path>.*)', serve,{'document_root':settings.MEDIA_ROOT}),
详见:路飞前台搭建
#1 安装node,官网下载,一路下一步 node -v v10.16.3 #2 安装模块 npm install 模块名 #npm比较慢,用淘宝的cnpm来替换npm #3 npm install -g cnpm --registry=https://registry.npm.taobao.org #4 创建vue的工程(需要一个vue脚手架) cnpm install -g @vue/cli #5 如果出问题执行如下,重新走3,4 npm cache clean --force #5 命令行下敲 vue 就会有提示 # 6 创建vue项目 vue create luffycity 选Manually #7 用pycharm打开 在terminal下敲:npm run serve #8 配置pycharm
详见:路飞前台搭建
public -favicon.ico # 标题栏小图标 -index.html # 整个项目的单页面 src -assets # 静态文件,js,css,img -components # 小组件,头部组件,尾部组件 -router # 路由相关 -store # vuex相关,状态管理器,临时存储数据的地方 -views # 页面组件 -App.vue # 根组件 -main.js # 配置文件(跟django的setting一样) #任何一个组件都有三部分 <template> #html相关 </template> <style> # css相关 </style> <script> # js相关 </script>
# 1 pip换源---》提高下载模块的速度() # 2 每个python项目,都应该有个requirement.txt--->项目依赖的模块 pip freeze >requirement.txt #生成 pip install -r requirement.txt -i 豆瓣源 # 下载 使用whl文件装,windows上你装的模块,都是 xxx.whl文件 -直接去网站搜:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted -指定版本和平台下载Twisted‑20.3.0‑cp36‑cp36m‑win_amd64.whl -cmd下cd到指定的虚拟环境路径:pip3 install 文件的路径 # 离线安装 pip download -r requirement.txt -d "D:\pipDownloadTest" 切换终端在待安装文件目录下(D:\pipDownloadTest) pip install PyMySQL-0.9.3-py2.py3-none-any.whl # 3 虚拟环境 -因为机器上多个程序依赖的第三方模块不一样,版本不一样 -pip3 install virtualenv -pip3 install virtualenvwrapper-win -# 解释:windows下的批处理文件xx.bat,linux和mac上是xx.sh -配置环境变量,执行一下bat,让你配置的生效 -workon 虚拟环境 -mkvirtualenv -p python3.6 虚拟环境名称 -deactivate -rmvirtualenv 虚拟环境名称 # 4 目录结构调整 ├── luffyapi ├── logs/ # 项目运行时/开发时日志目录 - 包 ├── manage.py # 脚本文件 ├── luffyapi/ # 项目主应用,开发时的代码保存 - 包 ├── apps/ # 开发者的代码保存目录,以模块[子应用]为目录保存 - 包 ├── libs/ # 第三方类库的保存目录[第三方组件、模块] - 包 ├── settings/ # 配置目录 - 包 ├── dev.py # 项目开发时的本地配置 └── prod.py # 项目上线时的运行配置 ├── urls.py # 总路由 └── utils/ # 多个模块[子应用]的公共函数类库[自己开发的组件] └── scripts/ # 保存项目运营时的脚本文件 - 文件夹 -创建app,需要到apps目录下创建 python ../../manage.py startapp user -luffyapi--》下的luffyapi也加入到了环境变量,以后导入模块,从luffyapi--》下的luffyapi开始导入即可,pycharm会飘红,右键变成source -在setting中注册前,要把apps的路径加入到环境变量 #5 数据库配置 -创建了一个用户,授予了某个数据库的权限,给他设了一个密码 grant all privileges on luffy.* to 'luffy'@'%' identified by 'Luffy123?'; grant all privileges on luffy.* to 'luffy'@'localhost' identified by 'Luffy123?'; -在setting中配置 #6 User表配置 -继承AbstractUser,要在执行迁移命令之前完成 # 7 路飞前台 -mvvm架构:M:script里写的东西 vm:viewmodel v:template, 数据驱动页面 -单页面开发:以后只需要写xx.vue组件:小组件和页面组件