路由参数与请求方式制定  

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 视图方式和返回值的更多相关文章

  1. 【Flask】 python学习第一章 - 5.0 模板

    jinjia2 模板 python实现 flask 内置语言  参照Djago实现  设置模板文件夹 设置模板语言 jinja2 demo6_template.html  ----> 从代码渲染 ...

  2. 【Flask】 python学习第一章 - 4.0 钩子函数和装饰器路由实现 session-cookie 请求上下文

    钩子函数和装饰器路由实现 before_request 每次请求都会触发 before_first_requrest  第一次请求前触发 after_request  请求后触发 并返回参数 tear ...

  3. 【Flask+Redis】 python学习第一章 - 7.0 断言 数据库测试 redis学习

    assert 断言 def div(num1, num2): # 断言 assert isinstance(num1, int), "值类型错误" assert isinstanc ...

  4. 【Flask】 python学习第一章 - 6.0 WTF表单 数据库 蓝图

    WTF表单  wtf.py pip install flask-wtf  # 安装 from flask_wtf import FlaskForm from wtform import StringF ...

  5. 【Flask】 python学习第一章 - 3.0 正则转换和错误捕捉

    3.1正则转换器定义 Class RegexConverter(BaseConverter): regex = "[0-9]{6}" app.url_map.converters[ ...

  6. python学习 第一章(说不定会有第零章呢)one day

    ------------恢复内容开始------------ 一.啥是python python是吉尔·范罗苏姆于1989年开发的一个新的脚本解释程序,是ABC语言的一种继承. 二.python的特点 ...

  7. 【Flask】 python学习第一章 - 创建与运行参数

    windos 创建环境 sudo pip install virtualenv   # 安装virtualenv virtualenv -p python dir_name cd dir_name p ...

  8. Python 学习第一章

    学习内容如下: Python 介绍 Python 3 VS Python 2 软件的安装 第一个 Python 程序 变量与字符编码 用户输入与注释 一.Python 介绍 python的创始人为吉多 ...

  9. Python学习第一章

    1.Python保留字即是关键字,我们不可以把他们当作任何标识符名称. python的标准库提供了一个keyword模板,可以输出当前版本的关键字: >>>import keywor ...

随机推荐

  1. datatables:initComplete和drawCallback比较

    drawCallback: 对表的每个绘制事件执行操作非常有用 - 例如,您可能希望使用新显示的数据更新外部控件,或者启用服务器端处理,您可能希望将事件分配给新创建的元素.此回调旨在实现此目的,并将在 ...

  2. 乐橙平台大华监控Android端实时预览播放

    一.初始化 首先我们需要到乐橙开放平台下载android对应的开发包,将sdk中提供的jar和so文件添加到项目中: 二.获取监控列表 监控列表我们是通过从自家后台服务器中获取的,这个自己根据需要调整 ...

  3. 《Mysql - 自增主键为何不是连续的?》

    一:自增主键是连续的么? - 自增主键不能保证连续递增. 二:自增值保存在哪里? - 当使用 show create table `table_name`:时,会看到 自增值,也就是 AUTO_INC ...

  4. 17.Python略有小成(包,logging模块)

    Python(包,logging模块) 一.包 什么是包 官网解释 : 包是一种通过使用'.模块名'来组织python模块名称空间的方式 , 具体来讲 , 包就是一个包含有__ init __.py文 ...

  5. day40——数据库、数据库分类、安装、修改密码、字符集编码、简单语句介绍

    day40 详情请看:https://www.cnblogs.com/clschao/articles/9907529.html 数据库 数据库 简而言之可视为电子化的文件柜--存储电子文件的处所,用 ...

  6. Altium Designer 复制报错-奇怪的问题解决办法

    之前AD画原理图复制元件正常使用,今天使用时复制弹出了错误.很是诧异! 各种搜索查找问题,发现或许是因为前一段时间把,电脑上的所有打印机都删除了导致的. 就安装了一个打印机. 再复制,就不报错了. 或 ...

  7. Django的Xadmin使用

    Django Xadmin 通常在实际的开发当中, 除了前后端分离的项目, 还有一些前后端不分离的项目, 这样我们在访问不分离的页面的时候, 就可以通过Django自带的admin管理模块来轻松实现后 ...

  8. 小程序day1-day3随笔

    0==小程序的结构和组件 1==小程序常用组件:text文本属性 3==小程序UI组件view的属性hover 鼠标点击出现的效果hover 4==小程序ui组件button按钮组件的属性 5==小程 ...

  9. Jupyter Notebook的配置(密码端口+远程登陆+nbextension)

    1 生成配置文件 linux和mac系统打开终端 windows系统打开anaconda自带的终端 jupyter notebook --generate-config 此时系统会生成 ~/.jupy ...

  10. 全栈项目|小书架|服务器开发-Koa2 参数校验处理

    为什么需要做参数校验 在开发中,无论是App开发还是服务器接口开发, 我们无法去预测用户传入的数据,因此参数(数据)校验是开发中不可或缺的一环. 例如像App的注册登录表单提交页面,就要做好多层的判断 ...