Created
June 22, 2012 19:56
-
-
Save jzempel/2974790 to your computer and use it in GitHub Desktop.
Flask Hard Crash
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="utf-8" /> | |
</head> | |
<body> | |
{% for category, message in get_flashed_messages(with_categories=true) %} | |
<div>{{ message }}</div> | |
{% endfor %} | |
<form action="{{ url_for("post") }}" method="post"> | |
<input type="submit" /> | |
</form> | |
</body> | |
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from flask import _request_ctx_stack, flash, Flask, redirect, \ | |
render_template, request, url_for | |
from flaskext.babel import Babel, gettext, lazy_gettext | |
#from flaskext.script import Manager | |
from traceback import format_exc | |
app = Flask(__name__) | |
app.config["SECRET_KEY"] = "secret" | |
Babel(app) | |
@app.route("/", methods=["GET"]) | |
def get(): | |
try: | |
# Lazy gettext on HTTP GET works fine. | |
message = lazy_gettext("Hello World!") | |
flash(message) | |
return render_template("test.html") | |
except Exception: | |
return format_exc() | |
@app.route("/", methods=["POST"]) | |
def post(): | |
# Exception goes away if the following is gettext. | |
message = lazy_gettext("Goodbye World.") | |
flash(message) | |
url = url_for("get") | |
return redirect(url) | |
#manager = Manager(app) | |
if __name__ == "__main__": | |
app.run() | |
#manager.run() # <- Use this to crash the running server. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment