如何在Python Flask上拥有URL的别名?

时间:2012-06-10 02:05:32

标签: python flask jinja2 werkzeug

我正在使用Flask 0.8。

如何获得这样的URL的别名:

@app.route('/')
def index():
    # I want to display as http://localhost/index, BUT, I DON'T WANT TO REDIRECT.
    # KEEP URL with only '/'

@app.route('/index')
def index():
    # Real processing to display /index view

那么,为什么我希望因处理/索引的DRY而使用别名

有人知道解决方案吗?

感谢胡椒粉。

3 个答案:

答案 0 :(得分:15)

这应该有效。但为什么你想要两个URL显示相同的东西?

答案 1 :(得分:5)

正如URL registry doc of Flask中所写:

  

您还可以为同一功能定义多个规则。他们必须   然而,这是独一无二的。

@app.route('/users/', defaults={'page': 1})
@app.route('/users/page/<int:page>')
def show_users(page):
    pass

答案 2 :(得分:2)

我不知道Flask是否有办法为视图函数分配多个URL,但您可以将它们链接起来:

@app.route('/')
def root():
    return index()

@app.route('/index')
def index():
    # Real processing to display /index view