Buscar..


Introducción

Mensaje intermitente a la plantilla mediante función flash() .

Sintaxis

  • flash (mensaje, categoría = 'mensaje')
  • flash ('hola mundo!')
  • flash ('Este es un mensaje de advertencia', 'advertencia')

Parámetros

mensaje el mensaje a ser flasheado.
categoría La categoría del mensaje, el predeterminado es el message .

Observaciones

Mensaje simple intermitente

Configure SECKET_KEY y luego el mensaje parpadeante en la función de visualización:

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')

Luego, renderice los mensajes en layout.html (que se extendió desde index.html ):

{% with messages = get_flashed_messages() %}
  {% if messages %}
    <ul class=flashes>
    {% for message in messages %}
      <li>{{ message }}</li>
    {% endfor %}
    </ul>
  {% endif %}
{% endwith %}
{% block body %}{% endblock %}

Intermitente con categorías

Establezca el segundo argumento cuando use flash() en la función de visualización:

flash('Something was wrong!', 'error')

En la plantilla, establezca with_categories=true en get_flashed_messages() , luego obtendrá una lista de tuplas en forma de (message, category) , por lo que puede usar la categoría como una clase 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 %}


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow