flask可选URL参数不生效
@mod.route('/participate/<survey_id>/', defaults = {'work_id':None}, methods = ['GET','POST'])
@mod.route('/pariicipate/<survey_id>/<work_id>', methods = ['GET', 'POST'])
def participate(survey_id, work_id):
/* do_something .. */
我可以访问 http://localhost:5000/participate/512dc365fe8974149091be1f
或者 http://localhost:5000/participate/512dc365fe8974149091be1f/
,而且如果我打开调试工具,我可以看到 work_id = None
。
但是如果我尝试访问 http://localhost:5000/participate/512dc365fe8974149091be1f/512dc365fe8974149091be1f
或者 http://localhost:5000/participate/512dc365fe8974149091be1f/512dc365fe8974149091be1f/
,我就会得到404错误。
这是为什么呢?我是不是在路由规则上做错了什么?
1 个回答
2
你的第二个路由写错了一个字哦 :)
@mod.route('/pariicipate/<survey_id>/<work_id>', methods = ['GET', 'POST'])
应该是
@mod.route('/participate/<survey_id>/<work_id>', methods = ['GET', 'POST'])