Message clignotant
Sur cette page
Message clignotant au modèle par la fonction flash()
.
Syntaxe
- flash(message, catégorie=‘message’)
- flash(‘hello, world!’)
- flash(‘Ceci est un message d’avertissement’, ‘avertissement’)
Paramètres
message | le message à flasher. |
---|---|
catégorie | la catégorie du message, la valeur par défaut est message . |
- [Modèle Héritage] (http://flask.pocoo.org/docs/0.12/patterns/templateinheritance/)
- API
Message simple clignotant
Définissez SECKET_KEY
, puis faites clignoter le message dans la fonction d’affichage :
from flask import Flask, flash, render_template
app = Flask(__name__)
app.secret_key = 'some_secret'
@app.route('/')
def index():
flash('Hello, I'm a message.')
return render_template('index.html')
Rendu ensuite les messages dans layout.html
(dont le index.html
s’est étendu):
{% with messages = get_flashed_messages() %}
{% if messages %}
<ul class=flashes>
{% for message in messages %}
<li>{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
{% endwith %}
{% block body %}{% endblock %}
Clignotant avec les catégories
Définissez le deuxième argument lorsque vous utilisez flash()
dans la fonction d’affichage :
flash('Something was wrong!', 'error')
Dans le modèle, définissez with_categories=true
dans get_flashed_messages()
, puis vous obtenez une liste de tuples sous la forme de (message, category)
, vous pouvez donc utiliser la catégorie comme classe HTML.
{% 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 %}