Python Django my flash消息不';行不通

Python Django my flash消息不';行不通,python,django,flash,Python,Django,Flash,我认为我的设置有问题,当我在登录操作中使用flash时,我在索引模板中看不到它,但当我在“我的”操作中使用flash时,我会看到重复的消息 设置.py INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages',

我认为我的设置有问题,当我在登录操作中使用flash时,我在索引模板中看不到它,但当我在“我的”操作中使用flash时,我会看到重复的消息

设置.py

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'debug_toolbar',
    'bookmarks',
)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
视图:

还有我的index.html

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

这些flash消息仅在渲染页面时显示

这就是为什么您会看到两条消息:

  • 您成功登录并设置了一条消息
  • 如果重定向到索引视图,消息框架将记住该消息
  • 索引视图呈现页面并显示这两条消息

  • 不,我只是登录,下一步我去索引页,我没有看到闪光的消息。我的secound行为是:我转到“我的”操作,然后转到索引页,我看到标签“这是两次”重复
    {% if messages %}
    <ul class="messages">
        {% for message in messages %}
        <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
        {% endfor %}
    </ul>
    {% endif %}
    
    urlpatterns = patterns('',
        url(r'^$', views.index, name = 'index'),
    ...
        url(r'^my/$', views.my, name = 'my'),
    ...
    )