是否可以直接声明一个烧瓶URL可选参数?
目前,我正在按照以下方式进行:
@user.route('/<userId>')
@user.route('/<userId>/<username>')
def show(userId, username=None):
pass
我怎么能直接说username
是可选的?
如果您像我一样使用Flask-restful,也可以这样使用:
api.add_resource(UserAPI, '/<userId>', '/<userId>/<username>', endpoint = 'user')
然后在资源类中:
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
标记为可选?如果是这样的话,我认为这是不可能的。
我可以访问或,如果我启动调试器,我可以看到。 如果我尝试或我得到了404。 为什么会这样?路由规则有什么问题吗?
问题内容: 是否可以直接声明Flask URL可选参数? 目前,我正在按照以下方式进行: 我如何直接说这是可选的? 问题答案: 另一种方法是写 但是我想你想编写一条路由并将其标记为可选?如果是这样,我认为不可能。
问题内容: 我有一个像这样的Django URL: views.py: 问题是我希望参数是可选的。 我希望并且成为同等有效的URL模式,以便如果 通过,那么我可以使用它。 就目前而言,访问不带参数的URL时会得到404 。 问题答案: 有几种方法。 一种是在正则表达式中使用非捕获组:使正则 表达式Django URL令牌为可选 另一种更容易遵循的方法是拥有多个符合你需求的规则,所有规则都指向同一视
问题内容: 我可以设置带有可选参数的路由(相同的模板和控制器,但是如果某些参数不存在,则应将其忽略)? 因此,只编写一个规则,而不是编写以下两个规则? 这样的事情([此参数是可选的]) 我在他们的文档中找不到任何内容。 问题答案: 看来Angular现在已对此提供支持。 从最新的(v1.2.0)文档中: 可以包含带问号()的可选命名组
问题内容: 我正在建立一个带有flask的网站,其中用户具有帐户并能够登录。我正在使用flask- principal作为登录部分和角色管理。有没有办法让用户的会话在5分钟或10分钟后过期?我在flask文档或flask- principal文档中找不到该文件。 我想到了一种手动方法,在登录时在服务器端设置一个带有时间标签的变量,并在用户执行下一个操作时,服务器会验证该时间戳记上的时间增量并删除会
问题内容: 我希望它能够仅使用lira_cbt作为参数(执行x),或者同时使用lira_cbt和eur_hedge(执行y)运行。可以使用sys.argv实现吗? 问题答案: 只需使用长度