Flask入门(一)
来源:互联网 发布:华为机顶盒安装软件 编辑:程序博客网 时间:2024/05/17 04:06
知识背景:Python 基础知识;零Flask框架基础。
Url 的认识:
Url协议分类
1、如果是http协议,那么浏览器会使用80端口。
2、如果是https协议,那么浏览器会使用443端口。
Url详解
1、一个url由以下几部分组成:
scheme://host:port/path/?query-string=xxx#anchor
其中:
- scheme:协议名
- host:主机名
- port:端口
- path:查找路径
- query-string:查询字符串
- anchor:锚点
web服务器和应用服务器以及web应用框架
- : 1、web服务器:处理http请求,相应静态文件。(Apache, Nginx, IIS)。
- 2、应用服务器:处理逻辑,比如php,python的代码,不能通过web服务器,只能通过应用服务器,常见的应用服务器有uwsgi,tomcat(java用)等。
- 3、web应用框架:封装了常用web功能的框架(Flask,Django)(SSH(java用))等。
第一个Flask程序
# encoding : utf-8from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world(): return 'Hello, World!'if __name__ == '__main__':#这行意思是:如果当前这个文件是作为入口程序运行的话,就执行app.run() app.run()
Debug模式
启动方法:在app.run()中传入关键字参数’debug’。app.run(debug = True),就进入了Debug模式。
Debug 模式的两大功能:
- (1)当程序出现问题的时候可以在页面中查看到错误信息和出错的位置。
- (2)只要修改了项目中的‘.py’文件,程序就会自动加载,不需要手动重新启动服务器。
使用配置文件config.py
import configapp.config.from_object(config)#然后在新建的config.py中设置DEBUG=True#即可#此外还有很多其他参数后期都是放在配置文件中,比如SECRET_KEY=SQLALCHEMY=#后面会提到
Url传参数
- 参数的作用:
- 可以使用一样的url,但是可以指定不同的参数,来加载不一样的内容。
- 在Flask中的使用,以article为例:
@app.route('/article/<id>') #↑参数需要放在'<>'中def article(id):#←视图函数中需要放和url中的参数同名的参数 return u'您请求的参数是:%s' % id
反转Url
反转Url的作用:
- 1、在页面重定向的时候,一般会使用url反转
- 2、在模板中也会使用url反转。
一个小例子:
from flask import Flask , url_forapp = Flask(__name__)@app.route('/')def index(): #通过my_list这个名字指向my_list的url print (url_for('my_list')) #通过article这个名字和ABC这个id指向article在参数为ABC情况下的页面 print (url_for('article', id = 'ABC')) return 'Hello, World!'@app.route('/list/')def my_list(): return 'list'@app.route('/article/<id>')def article(id): return u'您所请求的参数是:%s' % idif __name__ == '__main__': app.run()
页面跳转和重定向
用处:在用户访问一些需要登录的页面的时候,可以让他重定向到登录页面。
# encoding : utf-8from flask import Flask , url_for ,redirectapp = Flask(__name__)@app.route('/')def index(): #&&***重定向代码实现***&& login_url = url_for('login') return redirect(login_url) #&&***重定向代码实现***&& return '这是页面'@app.route('/login')def login(): return '这是登录页面'@app.route('/question/<is_login>/')def question(is_login): if is_login == '1': return '这是发布页面' else: return redirect(url_for('login'))if __name__ == '__main__': app.run(debug=True)
阅读全文
1 0
- Flask入门(一)
- python Flask Web开发入门(一)
- Flask系列教程(一)-----------入门
- flask入门学习(一)
- Flask入门笔记(一)
- Flask入门笔记(一)
- Flask入门一:环境配置
- Flask总结(一)
- Flask学习(一)
- Flask--Restful(一)
- flask入门学习(二)
- Python Flask基础教程(入门)
- # flask入门
- Flask框架:(一、安装)
- Flask基本结构(一)
- Flask学习笔记(一)
- flask-SQLAlchemy错误(一)
- flask成长记(一)
- 一些linux 切割的知识
- Eclipse 首次提交代码到GIT
- iOS APP打包提交后,在ITunesConnect创建不了版本问题解决
- 二分图匹配
- SVN——查看日志
- Flask入门(一)
- cv2491 玉蟾宫(极大子矩阵)
- 无题
- C#连接access和Excel(以数据库的形式)[附驱动资源]
- Android6.0------权限申请~easypermissions
- 字典的运用
- Android开发中实用工具类总结
- webview简单用法
- java之辨析Session Cookie Servletcontext