用户提交表单后应用给予的反馈就是 消息 messages;
这是一个基于 cookie 和 session 的消息框架;
安装
默认 Setting 已使能
包:
django.contrib.messages
中间件:
django.contrib.sessions.middleware.SessionMiddleware
django.contrib.messages.middleware.MessageMiddleware
默认 存储后端 是 session, 所以顺序有先后
配置
存储后端
MESSAGE_STORAGE = 'django.contrib.messages.storage.cookie.CookieStorage'
- SessionStorage
- CookieStorage
- FallbackStorage
默认 FallbackStorage = CookieStorage or SessionStorage
消息等级
MESSAGE_LEVEL
有 5个级别:DEBUG INFO SUCCESS WARNING ERROR
消息标签
MESSAGE_TAGS
可以在视图里使用的标签字符串,默认是消息等级的小写;
使用
增加
add_message(request, level, message, extra_tags='', fail_silently=False)
from django.contrib import messages
messages.add_message(request, messages.INFO, 'Hello world.')
显示
get_messages(request)
模板:
{% if messages %}<ul