参考链接: Python | 使用Flask进行Web开发简介

Python语言近些年越来越火,其特点是开发迅速,语法简单,可移植等。本人就Python3基础语法写了Demo:https://github.com/tangthis/python3_demo,可以当作基础教程和手册查阅。

Python Web开发框架常用的包括Django,Flask,Tornado,Bottle,web.py,Quixote等。Django功能比较全面,比较重,相对来说,Flask更加轻巧,适合新手学习和上手。下面介绍下Flask基本使用,包括以下内容:

Flask安装Python开发工具EclipsePyDev准备Flask项目框架搭建MVC模式实例开发

登录实例

Flask安装

1.安装Python3    从Python的官方网站下载Python 3.4对应的64位安装程序或32位安装程序(网速慢的同学请移步国内镜像)    64位:https://www.python.org/ftp/python/3.4.3/python-3.4.3.amd64.msi    32位:https://www.python.org/ftp/python/3.4.3/python-3.4.3.msi    国内镜像:http://pan.baidu.com/s/1sjqOkFF    安装时,要选择pip和Add python.exe to Path选项,如下图      2.安装Flask框架    打开命名行窗口,执行下面命令

  pip install flask

  pip install flask-login

  pip install flask-openid

  pip install flask-sqlalchemy

  pip install sqlalchemy-migrate

  pip install flask-whooshalchemy

  pip install flask-wtf

  pip install flask-babel

  pip install flup

Python开发工具Eclipse+PyDev准备

1.下载PythonDev插件    http://sourceforge.net/projects/pydev/  2.解压pydev插件后,会发现有features、plugins两个文件夹,然后把features文件夹下的文件移到D:\dev\eclipse\features目录下,把plugins文件夹下的文件移到D:\dev\eclipse\plugins目录下  3.重启eclipse,在windows->preferences出现PyDev配置项,表示PyDev插件安装成功  4.配置PyDev  windows->preferences->PyDev->Interpreter - Python,New一个Python解释器,填上解释器名字和路径,路径选相应的python.exe      至此,PyDev配置完了

Flask项目框架搭建

1.新建Python项目  File->New->PyDev Project  2.新建项目结构文件夹    app–根目录    static–静态资源目录,图片,js,css等    templates–模板    _init_.py–初始化脚本    views.py–视图控制器  tmp–临时文件夹  run.py–项目启动程序  3.通过Flask,创建神奇的Hello World程序  _init_.py创建Flask实例

from flask import flash

app = Flask(__name__)

from app import views

run.py创建启动脚本

from app import app

app.run(debug = True)

在app目录下,创建views.py,加入下面代码

from app import app

@app.route("/")

def index():

return "hello,world!"

4.启动程序

python run.py

5.访问http://localhost:5000/,返回hello,world

MVC模式实例开发

Controller使用介绍  拦截/index请求

@app.route("/index")

def index():

return 'index'

拦截Post或者Get方法

@app.route("/index",methods = ['GET'])

def index():

return 'index'

Restful支持

@app.route("/index/<username>")

def index(username):

return username

登录实例

我们通过一个登录的例子来展示完整的MVC流程  1.创建LoginForm登录表单  app->新建forms.py,继承Flask Form类

from flask.ext.wtf import Form

from wtforms import TextField,PasswordField

from wtforms.validators import Required,Length

class LoginForm(Form):

username= TextField('username',validators = [Required()])

password = PasswordField('username',validators = [Required()])

2.登录页面login.html  app->template->新建login.html

<h1>登录</h1>

<form action="" method="post" name="login">

<p>

请输入用户名:<br>

{{form.username(size=30)}}<br>

</p>

<p>

请输入用户名:<br>

{{form.password(size=30)}}<br>

</p>

<p><input type="submit" value="登录"></p>

</form>

3.登录控制器Controller

from app import app

@app.route('/login',methods = ['GET' , 'POST'])

def login():

#接收参数

form = LoginForm()

#提交验证

if form.validate_on_submit():

#打印(ps:验证逻辑自行补上)

print('username:' + form.username.data + ',password:' + form.password.data)

#返回到index.html页面

return render_template('index.html',form = form)

#未提交

return render_template('login.html',form = form)

4.登录成功页面index.html

<h1>Hi,{{form.username}}!</h1>

通过上面几步,一个使用Flask开发的简单的登录逻辑完成,可以看出来开发效率之高。更多Flask内容,请下载github微博Weibo实例源码  github源码:https://github.com/tangthis/Weibo

个人技术分享微信公众号,欢迎关注一起交流

[转载] Python轻量Web框架Flask使用相关推荐

  1. Python超级明星WEB框架Flask

    Flask简介 Flask是一个相对于Django而言轻量级的Web框架. 和Django大包大揽不同,Flask建立于一系列的开源软件包之上,这其中 最主要的是WSGI应用开发库Werkzeug和模 ...

  2. Python学习之web框架 Flask

    一.通过PIP 安装Flask 1.1 Windows环境安装pip A.首先PIP进入官网(https://pypi.python.org/pypi/pip)下载gz包 B.对gz压缩包进行解压,解 ...

  3. 基于Python语言的Web框架flask实现的校园二手物品发布平台

    目录 1.需求分析 1 1.1系统目标 1 1.2系统功能需求 1 1.3系统的输入输出需求 2 1.4系统的性能需求 2 2.可行性分析 2 2.1 可行性研究前提 2 2.2 要求 3 3.数据库 ...

  4. 新浪云python示例_Python Web框架Flask中使用新浪SAE云存储实例

    对于部署在新浪应用引擎SAE上的项目,使用新浪SAE云存储是不错的存储方案. 新浪SAE云存储仅能在SAE环境中正常使用,对它进行简单封装后,可以直接在Flask中使用,项目代码见GitHub上Fla ...

  5. 盘点Python网页开发轻量级框架Flask知识(下篇)

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 一曲新词酒一杯,去年天气旧亭台. ...

  6. python四大主流web框架

    python四大主流web框架 转载自博客:https://www.cnblogs.com/an-wen/p/11330834.html --爱文飞翔 Python 四大主流 Web 编程框架 目前P ...

  7. 手撸web框架即引入框架思想,wsgierf模块,动静态网页,模板语法jinja2,python三大主流web框架,django安装,三板斧...

    手撸web框架 web框架 什么是web框架? 暂时可理解为服务端. 软件开发架构 C/S架构 B/S架构 # 后端 import socketserver = socket.socket() # 不 ...

  8. Python之简易Web框架搭建

    Python之简易Web框架搭建 Web框架介绍 WSGI协议 Web框架开发 项目结构 MyWebServer.py 之前的静态服务器代码 WSGI协议的要求 更新代码 framework.py 返 ...

  9. python web框架flask连接mysql数据库操作

    最近在用flask框架做一个python web项目,其中要连接数据库,所以总结如下: 如何用pycharm快速创建一个flask项目我就不详细说了,可以先创建虚拟环境,不过大部分的事pycharm都 ...

最新文章

  1. oracle的全文索引
  2. tracepro应用实例详解_离心铸造工艺(实例)
  3. 纽约时报:安全问题将毁掉整个互联网
  4. Golang实践录:使用gin框架实现转发功能:管理后端服务
  5. 2019-07-18
  6. 最小生成树之普里姆算法
  7. keras + tensorflow —— 文本处理
  8. tcpdf html 支持css吗,TCPDF - 内部css无效
  9. 简单实现了DragonOS的块设备驱动模型以及AHCI驱动程序
  10. cmd命令与dos命令
  11. Chrome将网页保存为图片、PDF
  12. 电脑固态硬盘接口分类
  13. 【AMD、CMD和CommonJS】
  14. 4、编写程序,根据用户输入的数字转换成相应的中文的大写数字。例如,1.23转换为“壹点贰叁”。
  15. iPhone X(10)屏幕分辨率与适配
  16. 直播系统代码,自行更改导航栏样式
  17. 系统中断服务器,windows7资源管理器中有一个 系统中断 描述为延迟过程调用和中断服务例程__这是安全的吗,windows7的系统进程吗...
  18. word文件中表格迁移到excel
  19. 轻松掌握Notification的各种用法
  20. 在亚洲最HOT的地方做最IN的事

热门文章

  1. 【CCCC】L2-008 最长对称子串 (25分),直接枚举遍历
  2. 【空间】C++内存管理
  3. mysql拷贝目录迁移方案_mysql 直接拷贝data 目录下文件 进行数据库迁移时遇到的一些问题??...
  4. JavaScript文档对象模型概述(1)
  5. Counting 4-Cliques
  6. u检验中的查u界值表_延边双壁波纹管pvc-u
  7. 如何用python做模型_python的模型如何使用?
  8. kr中的逆波兰表示法计算器
  9. 网络层地址解析协议ARP
  10. 若在一分页存储管理系统中,某作业的页表如表所示。已知页面大小为 1024字节,试将逻辑地址 1011,2148,3000,4000,5012转化为相应的物理地址。