前言
作者目前也是开发web的新手,采用python开发简单的web应用,因此作者的视角更贴近于初学者和希望开发个简单web应用的开发者。将从以下方面开始进行编写代码前的准备:
1. python环境的准备
2. flask框架的安装
3. 数据库安装与启动
4. 服务器安装与启动
内容均以windows为例,linux差不多0.0
1.Python-environment
-
首先,需要准备的就是python环境,此处建议在官网:下载纯净python,按照官网的指导安装即可。
-(此处不推荐类似anaconda的集成python,那种更适合机器学习或者其他,冗余的包很多导致打包到服务器过于臃肿) -
最后,建议采用pipenv去管理自己的开发环境,因为一旦自己的项目多起来,扩展包随意安装,打包到服务器时要么臃肿要不不好分离。
安装好python之后用pip在控制台安装即可:
pip3 install pipenv
或
python3 -m pip install pipenv
安装完成可以通过查看版本命令检测安装是否成功
pipenv --version
2.Flask
- 我们的flask要安装在虚拟环境中,所以在此处初始化一个项目的env。 初始化pienv环境需要在你的项目根目录里执行install命令:
pipenv install
- 上述命令会生成Pipfile和Pipfile.lock,使用pipenv创建虚拟环境,自动生成一个随机的虚拟环境目录名如果在windows系统下执行命令,生成的虚拟环境在C:\Users\用户名.virtualenvs文件夹下。
一般虚拟环境目录名的前缀是你创建环境时所在的项目目录名,如在myblog目录下执行命令,虚拟环境的目录名称就是myblog-Gtn4e1q9,后半部分为随机字符串。
激活环境:
pipenv shell
安装flask:
pip install Flask
从requirements文件中安装项目依赖包:
pipenv install requests
当然你一开始可能没有,需要哪个包在你这个项目的pipenv中安装哪个包,后来包多了就要用freeze去生成requirements.txt文件便于迁移和记录
3.数据库
- web应用中数据库基本是必备的了,存各种表单数据等等。此处推荐使用安装mysql,简单易用就完事了
注意记住自己的用户名和密码,记不住的请在安全的前提下一律用root
控制台中启动数据库:
mysql -uroot -proot
mysql中最最常用命令:
会这些差不多了,其他建议在pycharm中链接database查看
show databases;# 显示所有数据库
create database name; # 创建个数据库叫name
use database name;# 切换到数据库name中
show tables;# 显示数据库中的表
drop database name;# 删除数据库,请谨慎
4.服务器
- 开发时:
flask内置有服务器,性能很差, 但是自己开发时使用是完全没有问题,不需要再额外添加服务器。
- 上线部署时:
类似于java有“汤姆猫”Tomcat,flask可以在“独角兽”Gunicorn上运行。但此处建议在linux上,虽然windows最近支持gunicorn,但是刚上windows的东西总是不一定靠谱的,you know!
安装独角兽:
pip install gunicorn
在独角兽上运行你的app:
gunicorn [OPTIONS] APP_MODULE
OPTIONS 可选参数 运行gunicorn的配置选项。 APP_MODULE 指定 wsgi application文件,书写格式为 $(MODULE_NAME) : $(VARIABLE_NAME)。其中 module_name用来制定将要运行的 wsgiapplication文件,可是一个完整的点缀名。比如当前目录 myapp 目录下有个 Python 包 gunicorn_app,gunicorn_app包下有一个wsgi application文件 test.py 则 module_name可以直接写成 gunicorn_app.test。viriable_name表示在 module_name 文件中要调用的对象(是一个WSGIcallable, 可以是一个函数,类详情参看WSGI规格说明书)名。