为了账号安全,请及时绑定邮箱和手机立即绑定

Flask可以有可选的URL参数吗?

Flask可以有可选的URL参数吗?

婷婷同学_ 2019-12-12 14:11:39
是否可以直接声明Flask URL可选参数?目前,我正在按照以下方式进行:@user.route('/<userId>')@user.route('/<userId>/<username>')def show(userId, username=None):    pass我如何直接说这username是可选的?
查看完整描述

3 回答

?
森栏

TA贡献1810条经验 获得超5个赞

另一种方法是写


@user.route('/<user_id>', defaults={'username': None})

@user.route('/<user_id>/<username>')

def show(user_id, username):

    pass

但是我想您想编写一条路由并将其标记username为可选?如果是这样,我认为不可能。


查看完整回答
反对 回复 2019-12-12
?
HUH函数

TA贡献1836条经验 获得超4个赞

几乎与几个月前完成的Audrius一样,但是您可能会发现函数头中的默认值(使用python的方式)更具可读性:


@app.route('/<user_id>')

@app.route('/<user_id>/<username>')

def show(user_id, username='Anonymous'):

    return user_id + ':' + username


查看完整回答
反对 回复 2019-12-12
?
动漫人物

TA贡献1815条经验 获得超10个赞

如果您像我一样使用Flask-Restful,也可以这样:


api.add_resource(UserAPI, '/<userId>', '/<userId>/<username>', endpoint = 'user')

然后在您的Resource类中:


class UserAPI(Resource):


  def get(self, userId, username=None):

    pass


查看完整回答
反对 回复 2019-12-12
  • 3 回答
  • 0 关注
  • 1266 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信