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

hof*_*f0w 8 python werkzeug jinja2 flask

我正在使用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
Run Code Online (Sandbox Code Playgroud)

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

有人知道解决方案吗?

感谢胡椒粉.

Fog*_*ird 16

这应该工作.但是为什么你想要两个URL显示相同的东西?

@app.route('/')
@app.route('/index')
def index():
    ...
Run Code Online (Sandbox Code Playgroud)

  • 潜在用途:使用部分弃用的旧名称重命名 API。 (2认同)

sat*_*oru 6

正如Flask的URL注册表文档中所写:

您还可以为同一功能定义多个规则.但它们必须是独一无二的.

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