Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/app/static/doc/flask-docs/_sources/patterns/flashing.txt
diff options
context:
space:
mode:
Diffstat (limited to 'app/static/doc/flask-docs/_sources/patterns/flashing.txt')
-rw-r--r--app/static/doc/flask-docs/_sources/patterns/flashing.txt119
1 files changed, 0 insertions, 119 deletions
diff --git a/app/static/doc/flask-docs/_sources/patterns/flashing.txt b/app/static/doc/flask-docs/_sources/patterns/flashing.txt
deleted file mode 100644
index 7abe716..0000000
--- a/app/static/doc/flask-docs/_sources/patterns/flashing.txt
+++ /dev/null
@@ -1,119 +0,0 @@
-.. _message-flashing-pattern:
-
-Message Flashing
-================
-
-Good applications and user interfaces are all about feedback. If the user
-does not get enough feedback they will probably end up hating the
-application. Flask provides a really simple way to give feedback to a
-user with the flashing system. The flashing system basically makes it
-possible to record a message at the end of a request and access it next
-request and only next request. This is usually combined with a layout
-template that does this.
-
-Simple Flashing
----------------
-
-So here is a full example::
-
- from flask import flash, redirect, url_for, render_template
-
- @app.route('/')
- def index():
- return render_template('index.html')
-
- @app.route('/login', methods=['GET', 'POST'])
- def login():
- error = None
- if request.method == 'POST':
- if request.form['username'] != 'admin' or \
- request.form['password'] != 'secret':
- error = 'Invalid credentials'
- else:
- flash('You were successfully logged in')
- return redirect(url_for('index'))
- return render_template('login.html', error=error)
-
-And here the ``layout.html`` template which does the magic:
-
-.. sourcecode:: html+jinja
-
- <!doctype html>
- <title>My Application</title>
- {% with messages = get_flashed_messages() %}
- {% if messages %}
- <ul class=flashes>
- {% for message in messages %}
- <li>{{ message }}</li>
- {% endfor %}
- </ul>
- {% endif %}
- {% endwith %}
- {% block body %}{% endblock %}
-
-And here the index.html template:
-
-.. sourcecode:: html+jinja
-
- {% extends "layout.html" %}
- {% block body %}
- <h1>Overview</h1>
- <p>Do you want to <a href="{{ url_for('login') }}">log in?</a>
- {% endblock %}
-
-And of course the login template:
-
-.. sourcecode:: html+jinja
-
- {% extends "layout.html" %}
- {% block body %}
- <h1>Login</h1>
- {% if error %}
- <p class=error><strong>Error:</strong> {{ error }}
- {% endif %}
- <form action="" method=post>
- <dl>
- <dt>Username:
- <dd><input type=text name=username value="{{
- request.form.username }}">
- <dt>Password:
- <dd><input type=password name=password>
- </dl>
- <p><input type=submit value=Login>
- </form>
- {% endblock %}
-
-Flashing With Categories
-------------------------
-
-.. versionadded:: 0.3
-
-It is also possible to provide categories when flashing a message. The
-default category if nothing is provided is ``'message'``. Alternative
-categories can be used to give the user better feedback. For example
-error messages could be displayed with a red background.
-
-To flash a message with a different category, just use the second argument
-to the :func:`~flask.flash` function::
-
- flash(u'Invalid password provided', 'error')
-
-Inside the template you then have to tell the
-:func:`~flask.get_flashed_messages` function to also return the
-categories. The loop looks slightly different in that situation then:
-
-.. sourcecode:: html+jinja
-
- {% with messages = get_flashed_messages(with_categories=true) %}
- {% if messages %}
- <ul class=flashes>
- {% for category, message in messages %}
- <li class="{{ category }}">{{ message }}</li>
- {% endfor %}
- </ul>
- {% endif %}
- {% endwith %}
-
-This is just one example of how to render these flashed messages. One
-might also use the category to add a prefix such as
-``<strong>Error:</strong>`` to the message.