我试图了解烧瓶的宁静模块,但无法弄清楚如何为资源提供options参数。
即
class TodoSimple(Resource):
def get(self, todo_id):
return {todo_id: todos[todo_id]}
def put(self, todo_id):
todos[todo_id] = request.form['data']
return {todo_id: todos[todo_id]}
api.add_resource(TodoSimple, '/<string:todo_id>')
在上述情况下,如何创建一个新的端点来返回所有待办事项,而不仅仅是一个?
答案 0 :(得分:1)
我认为最好的方法是拥有两个资源/端点。第一个用于管理集合(获取待办事项列表,添加新的待办事项),第二个用于管理集合的项目(更新或删除项目):
class TodoListResource(Resource):
def get(self):
return {'todos': todos}
class TodoResource(Resource):
def get(self, todo_id):
return {todo: todos[todo_id]}
def put(self, todo_id):
todos[todo_id] = request.form['data']
return {todo: todos[todo_id]}
api.add_resource(TodoListResource, '/todos')
api.add_resource(TodoResource, '/todos/<string:todo_id>/')
这种方式可提供更多的REST。
答案 1 :(得分:0)
由于您需要其他途径来检索所有待办事项,因此请创建另一个处理多个资源的类。在您的情况下,您将执行以下操作:
class TodoSimples(Resource):
def get(self):
return {'todos': todos}
api.add_resource(TodoSimples, '/todos')