【Flask】 python学习第一章 - 2.0 视图方式和返回值
路由参数与请求方式制定
ALT+回车 pycharm 快速导包
demo3 指定访问地址 与请求方式
# 给路由传入参数 使用尖括号 ,视图函数需要接收参数
@app.route("/index/<int:user_id>", method=['POST, 'GET'])
def index(user_id):
return "%s + demo" % user_id
from flask import Flask, request app = Flask(__name__,
static_url_path='/python27', # 必须以斜杠开头 否则报错
static_folder='static',
template_folder='templates') @app.route('/')
def index():
return "hello wolrd" # 给路由传入参数 使用尖括号 ,视图函数需要接收参数
# <int:user_id> 限定参数为整数
@app.route('/user/<int:user_id>')
def demo01(user_id):
return "%s+demo2" % user_id # 添加请求方式
@app.route("/demo3", methods=['GET', 'POST'])
def demo3():
# 打印请求类型
return "demo3 %s" % request.method if __name__ == '__main__':
app.run("127.0.0.1", 8080, debug=True) 路由参数与请求方式
路由参数与请求方式
demo4 将字典转成json格式
# json.dumps("{字典}") 字典转换json字符串
# json.loads("{json"}) json转字典 封装响应 指定返回类型
直接使用 return jsonify(字典) 直接返回json格式 Flask自带 指定返回content-type【内容类型】
return jsonify("字典参数")
from flask import Flask, request, json app = Flask(__name__,
static_url_path='/python27', # 必须以斜杠开头 否则报错
static_folder='static',
template_folder='templates') @app.route('/')
def index():
return "hello wolrd" # 给路由传入参数 使用尖括号 ,视图函数需要接收参数
# <int:user_id> 限定参数为整数
@app.route('/user/<int:user_id>')
def demo01(user_id):
return "%s+demo2" % user_id # 添加请求方式
@app.route("/demo3", methods=['GET', 'POST'])
def demo3():
# 打印请求类型
return "demo3 %s" % request.method @app.route("/json")
def demo4():
# key 必须为字符串
json_dict = {
"name": "laowang",
"age": 18,
"color": "green"
}
# 将字典转为字符串
#result = json.dumps(json_dict)
return jsonify(json_dict) if __name__ == '__main__':
app.run("127.0.0.1", 8080, debug=True)
字典转换成json
demo5 重定向
# url_for 指定视图的路由URL 并且可以携带参数
@app.route("/redirect")
def demo5():
# return redirect("https://www.baidu.com")
return redirect(url_for("demo01", user_id=123))
from flask import Flask, request, json, redirect, url_for app = Flask(__name__,
static_url_path='/python27', # 必须以斜杠开头 否则报错
static_folder='static',
template_folder='templates') @app.route('/')
def index():
return "hello wolrd" # 给路由传入参数 使用尖括号 ,视图函数需要接收参数
# <int:user_id> 限定参数为整数
@app.route('/user/<int:user_id>')
def demo01(user_id):
return "%s+demo2" % user_id # 添加请求方式
@app.route("/demo3", methods=['GET', 'POST'])
def demo3():
# 打印请求类型
return "demo3 %s" % request.method @app.route("/json")
def demo4():
# key 必须为字符串
json_dict = {
"name": "laowang",
"age": 18,
"color": "green"
}
# 将字典转为字符串
result = json.dumps(json_dict)
test_dict = json.loads('{"name":"laowang","age":18}') return result # demo5 重定向
@app.route("/redirect")
def demo5():
# return redirect("https://www.baidu.com")
return redirect(url_for("demo01", user_id=123)) if __name__ == '__main__':
app.run("127.0.0.1", 8080, debug=True)
demo5 重定向并使用url_for 指定视图路由
demo6 自定义状态码
@app.route("/demo6")
def demo6():
return 'demo6' , 666
一个爱学习的oscar
【Flask】 python学习第一章 - 2.0 视图方式和返回值的更多相关文章
- 【Flask】 python学习第一章 - 5.0 模板
jinjia2 模板 python实现 flask 内置语言 参照Djago实现 设置模板文件夹 设置模板语言 jinja2 demo6_template.html ----> 从代码渲染 ...
- 【Flask】 python学习第一章 - 4.0 钩子函数和装饰器路由实现 session-cookie 请求上下文
钩子函数和装饰器路由实现 before_request 每次请求都会触发 before_first_requrest 第一次请求前触发 after_request 请求后触发 并返回参数 tear ...
- 【Flask+Redis】 python学习第一章 - 7.0 断言 数据库测试 redis学习
assert 断言 def div(num1, num2): # 断言 assert isinstance(num1, int), "值类型错误" assert isinstanc ...
- 【Flask】 python学习第一章 - 6.0 WTF表单 数据库 蓝图
WTF表单 wtf.py pip install flask-wtf # 安装 from flask_wtf import FlaskForm from wtform import StringF ...
- 【Flask】 python学习第一章 - 3.0 正则转换和错误捕捉
3.1正则转换器定义 Class RegexConverter(BaseConverter): regex = "[0-9]{6}" app.url_map.converters[ ...
- python学习 第一章(说不定会有第零章呢)one day
------------恢复内容开始------------ 一.啥是python python是吉尔·范罗苏姆于1989年开发的一个新的脚本解释程序,是ABC语言的一种继承. 二.python的特点 ...
- 【Flask】 python学习第一章 - 创建与运行参数
windos 创建环境 sudo pip install virtualenv # 安装virtualenv virtualenv -p python dir_name cd dir_name p ...
- Python 学习第一章
学习内容如下: Python 介绍 Python 3 VS Python 2 软件的安装 第一个 Python 程序 变量与字符编码 用户输入与注释 一.Python 介绍 python的创始人为吉多 ...
- Python学习第一章
1.Python保留字即是关键字,我们不可以把他们当作任何标识符名称. python的标准库提供了一个keyword模板,可以输出当前版本的关键字: >>>import keywor ...
随机推荐
- 查看 redis 请求日志
转: 查看 redis 请求日志 2019-05-29 15:34:41 打卤 阅读数 1980更多 分类专栏: other 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转 ...
- Qt开发经验小技巧21-30
如果出现Z-order assignment: is not a valid widget.错误提示,用记事本打开对应的ui文件,找到为空的地方,删除即可. 善于利用QComboBox的addItem ...
- ADB命令使用大法
前言 Android开发调试工具ADB的使用.ADB(Android Debug Bridge)是Android SDK中的一个工具, 使用ADB可以直接操作管理Android模拟器或者真实的And ...
- [LeetCode] 288.Unique Word Abbreviation 独特的单词缩写
An abbreviation of a word follows the form <first letter><number><last letter>. Be ...
- Jenkins - 插件管理
1 - Jenkins插件 Jenkins通过插件来增强功能,可以集成不同的构建工具.云平台.分析和发布工具等,从而满足不同组织或用户的需求. Jenkins 提供了不同的的方法来安装插件(需要不同级 ...
- 主机可以ping通虚拟机,虚拟机ping不通主机和外网
vmware-->编辑-->虚拟网络编辑器-->更改配置,如下图选择:
- Python微服务实践-集成Consul配置中心
A litmus test for whether an app has all config correctly factored out of the code is whether the co ...
- AppCrawler运用总结
一.环境 1.环境准备:安装安卓SDK + 真机 + appcrawler-2.1.3.jar 在放 appcrawler-2.1.0.jar 的文件夹下执行以下命令: 1.生成yml的demo:ja ...
- 学习数据结构Day2
之前学习过了数组的静态实现方法,同时将数组的所有有可能实现的方法都统一实现了一遍,之后支持了泛型的相关 概念,接下来就是如何对数组进行扩容的操作也就是实现动态数组. private void resi ...
- 【RocketMQ源码学习】- 4. Client 事务消息源码解析
介绍 > 基于4.5.2版本的源码 1. RocketMQ是从4.3.0版本开始支持事务消息的. 2. RocketMQ的消息队列能够保证生产端,执行数据和发送MQ消息事务一致性,而消费端的事务 ...