2024-03-29 00:53:59 发布
网友
是否可以直接声明flask URL可选参数?
目前我正在按以下方式进行:
@user.route('/<userId>') @user.route('/<userId>/<username>') def show(userId, username=None): pass
我怎么能直接说username是可选的?
username
如果你像我一样使用烧瓶,也可以这样:
api.add_resource(UserAPI, '/<userId>', '/<userId>/<username>', endpoint = 'user')
a然后在资源类中:
class UserAPI(Resource): def get(self, userId, username=None): pass
几乎与几个月前Audrius编写的一样,但是您可能会发现它在函数头中的默认值更具可读性—就像您在python中习惯的那样:
@app.route('/<user_id>') @app.route('/<user_id>/<username>') def show(user_id, username='Anonymous'): return user_id + ':' + username
另一种方法是写作
@user.route('/<user_id>', defaults={'username': None}) @user.route('/<user_id>/<username>') def show(user_id, username): pass
但我猜你想写一个单独的路由并将username标记为可选?如果真是这样的话,我想这是不可能的。
如果你像我一样使用烧瓶,也可以这样:
a然后在资源类中:
几乎与几个月前Audrius编写的一样,但是您可能会发现它在函数头中的默认值更具可读性—就像您在python中习惯的那样:
另一种方法是写作
但我猜你想写一个单独的路由并将
username
标记为可选?如果真是这样的话,我想这是不可能的。相关问题 更多 >
编程相关推荐