displaying flash message django

Step 1: Import the necessary modules in your Django views.py file.

from django.contrib import messages
from django.shortcuts import render, redirect

Step 2: In your view function, use the messages module to add a message to the request.

def your_view_function(request):
    # Your view logic here

    messages.success(request, 'Your success message.')
    # or use messages.warning(), messages.error(), or messages.info() for different message types

    return render(request, 'your_template.html')

Step 3: In your HTML template, display the messages using a loop.

{% if messages %}
  <ul class="messages">
    {% for message in messages %}
      <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
    {% endfor %}
  </ul>
{% endif %}

Step 4: Ensure that the template includes the {% load messages %} tag at the top to load the messages template tags.

{% load messages %}
<!DOCTYPE html>
<html>
<head>
  <!-- Your head content -->
</head>
<body>
  <!-- Your body content -->

  {% if messages %}
    <ul class="messages">
      {% for message in messages %}
        <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
      {% endfor %}
    </ul>
  {% endif %}

  <!-- Your body content continues -->
</body>
</html>

Step 5: Ensure that the Django messages middleware is included in your MIDDLEWARE setting in the settings.py file.

MIDDLEWARE = [
    # Other middleware classes
    'django.contrib.messages.middleware.MessageMiddleware',
    # Other middleware classes
]

Step 6: Also, include the messages context processor in your TEMPLATES setting in the settings.py file.

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR / "templates"],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                # Other context processors
                'django.contrib.messages.context_processors.messages',
                # Other context processors
            ],
        },
    },
]