2012-06-10 17 views
8

Używam Flask 0.8.Jak mieć alias adresu URL w Pythonie?

Jak mieć alias adresu URL tak:

@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 

Więc dlaczego moja nadzieja na używanie aliasu z powodu suchej przetwarzania/index

Ktoś zna rozwiązanie?

dzięki pepperists.

Odpowiedz

14

to powinno działać. Ale dlaczego dwa URL-e mają wyświetlać to samo?

@app.route('/') 
@app.route('/index') 
def index(): 
    ... 
+0

dzięki za wszystko, rozwiązany. – hof0w

2

ja nie wiem, czy kolba ma sposób, aby przypisać więcej niż jeden adres URL do funkcji widoku, ale można z pewnością przykuje ich tak:

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

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

Jak jest napisane w URL registry doc of Flask:

Można również zdefiniować wiele reguł dla tej samej funkcji. Muszą jednak być unikatowi.

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