【问题标题】:Django 1.4 messages frameworkDjango 1.4 消息框架
【发布时间】:2013-01-06 09:46:45
【问题描述】:

开发服务器使用django1.3,但部署服务器使用django1.4。 Messages 框架在 django1.4 上根本无法运行,但在 1.3 上运行良好,代码如下。

settings.py

    MIDDLEWARE_CLASSES = (
        'django.middleware.common.CommonMiddleware',
        'django.contrib.sessions.middleware.SessionMiddleware',
        'django.middleware.csrf.CsrfViewMiddleware',
        'django.contrib.auth.middleware.AuthenticationMiddleware',
        'django.contrib.messages.middleware.MessageMiddleware',
    )
    INSTALLED_APPS = (
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.sites',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'django.contrib.admin',
        ... ,
    )

views.py

    from django.contrib import messages
    from django.http import HttpResponseRedirect
    ...

    def some_view(request):
        ...
        mess1 = 'Thank you! Your message was received.' 
        messages.info(request, mess1)
        return HttpResponseRedirect('/contact/')

模板

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

【问题讨论】:

  • 实际呈现该模板的视图在哪里?

标签: django django-views django-messages


【解决方案1】:

您是否添加了消息模板上下文处理器?

TEMPLATE_CONTEXT_PROCESSORS = (
    "django.contrib.messages.context_processors.messages",
)

看到这个for more info

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-28
    • 1970-01-01
    • 2022-01-11
    相关资源
    最近更新 更多