1

我有以下代码

@ns.route('/blah/<query>', methods=['GET'])
@api.doc(params={'query': 'Search ID'})
class myClass(Resource):
    @api.doc('blah', responses={ 200: 'OK' })
    def get(self, query):
        """Returns list of blah."""

这给了我以下结果: 在此处输入图像描述 在此处输入图像描述

问题是:我怎样才能使获取参数值不是强制性的?

4

1 回答 1

0

我不肯定情况仍然如此,我将是第一个承认我是这个特定框架的新手,但根据 2013 年对这个错误的答案,框架似乎不允许这种行为。

推荐的解决方法是创建两个Resources,一个带参数,一个不带参数。这就是我使用的解决方法;通常将它与一个简单的基类配对,该基类带有一个方法和一个都调用的可选参数。

来自 GitHub 问题的示例:

class Users(Resource):
    def get(self):
        return users
    def post(self):
        #...

class User(Resource):
    def get(self, id=None):
        return find_user_by_id(id)
    def post(self):
        #...

api.add_resource(Users, '/users')
api.add_resource(User, '/users/<id>')
于 2017-12-21T17:02:09.623 回答