Messages Framework Usage

A snippet showing how to use DjangoÆs messages framework.


# views.py
from django.contrib import messages
from django.shortcuts import redirect

def save_item(request):
    if request.method == 'POST':
        # Your save logic here
        messages.success(request, "Item saved successfully!")
        return redirect('item_list')
    messages.error(request, "Something went wrong.")
    return redirect('item_list')
  

# templates/base.html
{% if messages %}
<div class="container mt-2">
  {% for message in messages %}
  <div class=" alert alert-{{ message.tags }} alert-dismissible fade show" role="alert">
    {{ message|escapejs }}
    <button type="button" class="btn-close" data-bs-dismiss="alert"></button>
  </div>
  {% endfor %}
</div>
{% endif %}
  
Explanation:
  • Add messages via messages.success(), messages.info(), messages.warning(), or messages.error().
  • Messages are automatically stored in the session and displayed on the next request.
  • Render messages in a base template using message.tags for Bootstrap alert classes.
Never miss a story on Django.wiki

Subscribe for fresh tutorials, snippets, and updates.

By subscribing you agree to our Privacy Policy.