Ich brauche eine Python Dekorateur hinzufügen Wegfunktionen Flask, (im Grunde bearbeitet ich den Code aus here)Python Dekorateur mit Flask
def requires_admin(f):
def wrapper(f):
@wraps(f)
def wrapped(*args, **kwargs):
#if not admin:
#return render_template('error.html')
return f(*args, **kwargs)
return wrapped
return wrapper
und es verwenden, wie dies in Ordnung sein wird:
@app.route('/admin/action')
@requires_admin
def AdminAction():
#NO error if NO parameter
Aber es verwendet, wie diese Fehler haben:
@app.route('/admin/action/<int:id>')
@requires_admin
def AdminAction(id):
In Flask 0.10, ich Fehler wie diese zu erhalten (I updat nur ed von Flask 0,9 bis 0,10 und in Flask 0.9 gibt es keine Grammatikfehler wie diese):
@requires_admin
File "/usr/local/lib/python2.6/dist-packages/Flask-0.10.1-py2.6.egg/flask/app.
py", line 1013, in decorator
self.add_url_rule(rule, endpoint, f, **options)
File "/usr/local/lib/python2.6/dist-packages/Flask-0.10.1-py2.6.egg/flask/app.
py", line 62, in wrapper_func
return f(self, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/Flask-0.10.1-py2.6.egg/flask/app.
py", line 984, in add_url_rule
'existing endpoint function: %s' % endpoint)
AssertionError: View function mapping is overwriting an existing endpoint functi
on: wrapper
ich zum Dekorateur Sachen ziemlich neu bin, wie kann ich diesen Fehler zu korrigieren?
nicht zu 100% sicher, aber möglicherweise müssen Sie ein 'endpoint' Argument für die Strecke zur Verfügung zu stellen? Siehe http://stackoverflow.com/questions/17540754/route-to-view-func-with-same-decorators-flask –
@ will-hart Ich habe gerade die Frage aktualisiert. Nur mit Parameter wird es Fehler geben. –
@JamesKing ist es http://StackOverflow.com/Questions/28381560/most-effective-way-to-find-and-replace eine nette Frage. Sie haben Downvotes nur wegen des Mangels an Bemühungen. Komm mit Versuchen zurück und ich werde bereit sein, eine Antwort zu geben. –