使用Anaconda虚拟环境搭建Flask项目(踩坑无数版之集大成版!!!!)
介绍
本人系统开发环境是python 3.6,pycharm使用的是2018专业版,最近想搭建Flask项目,但是Jinja2已更新到3.0.3版本完全和python3.6不搭,一些渲染模块老是报错。于是,想通过Anaconda创建一个高于python3.6版本的环境,进行项目搭建,结果到使用踩坑无数555555!!!一些小小经验总结。
conda创建虚拟环境
1、创建虚拟环境
在Anaconda Prompt下运行以下命令来创建一个名为 myenv 的虚拟环境,这里使用的是python3.7(可以自己指定)
conda create --name myenv python=3.7
2、激活虚拟环境
在创建完成后,使用命令对环境进行激活
conda activate myenv
3、在虚拟环境中安装相关库(有坑)
大部分的教程在这里会直接使用以下命令进行flask安装:
conda install flask
在我本机环境下进行这么安装后,再使用pycharm导入虚拟环境会发现,myenv
下并没有flask这个库
但是在虚拟环境下使用conda list
又会发现又flask这个库,经过查询发现,Anaconda下的lib
文件夹下的site-packages
确实有flask相关库,但是在搭建的myenv
虚拟环境下的lib
文件夹下的site-packages
确没有这个库,说明每次下载库都下载到全局路径下!!!根据搜索在Conda虚拟环境用conda和pip安装软件包的路径问题 这篇帖子的评论区找到了比较偷懒的解决办法,即在虚拟环境下,先使用
conda install pip
再进行pip install
的安装
pycharm下使用虚拟环境
打开file -> Settings -> Project -> Project Interpreter
添加虚拟环境
根据自己Anaconda的安装环境路径找到envs
这个管理虚拟环境的文件夹,再找到自己创建的虚拟环境的文件夹下的python.exe
导入完成后,可能还会又另外一个小坑
左上角是这个情况,或者不是这个情况也需要检查一下,因为你运行可能会发现你还在系统python的环境下
现在就可以运行你的flask项目啦!!!
额外Tips
像迁移数据库等操作需要再Terminal
下进行,而你打开你左下角的Terminal
是这样
需要先使用
activate myenv
进入myenv
环境,再执行
flask db init
就不会出现Error: No such command 'db'.
啦
完结撒花~~~~~