Python中如何在Flask-RESTful路由中设置参数以获取列表参数?
api.add_resource(Todo,'/v1_todo/<id>'),比方说这样只能获取单个参数,但要怎么样才能获取从前端传过来的列表参数呢?最近刚接触 flask,还有很多不熟悉的地方,请多多包涵,先谢谢各位大大的解答了。</id>
Python中如何在Flask-RESTful路由中设置参数以获取列表参数?
在 URL 里传列表?
在Flask-RESTful里处理列表参数,直接用reqparse的action='append'就行。比如你要接收多个tag参数,可以这样搞:
from flask import Flask
from flask_restful import Api, Resource, reqparse
app = Flask(__name__)
api = Api(app)
parser = reqparse.RequestParser()
parser.add_argument('tag', action='append') # 关键在这里
class ItemResource(Resource):
def get(self):
args = parser.parse_args()
tags = args.get('tag', [])
return {'tags': tags}
api.add_resource(ItemResource, '/items')
if __name__ == '__main__':
app.run(debug=True)
请求的时候用/items?tag=python&tag=flask&tag=rest,返回的就是{"tags": ["python", "flask", "rest"]}。
简单说就是加个action='append'参数。
from flask import request
在 request 里面.
parser = RequestParser()
parser.add_argument(“id”, location=“json”, action=“append”)
req = parser.parse_args(strict=True)
id_ = req.get(“id”)
楼主的意思是传表单, 3L 正解, 以下是官方文档的示例,楼主要多看官方文档哦
from flask_restful import reqparse
parser = reqparse.RequestParser()
parser.add_argument(‘rate’, type=int, help=‘Rate to charge for this resource’)
args = parser.parse_args()
rate = args[‘rate’]


