首先:Hello StackOverflow人员:)。这是我在这里的第一篇文章。好的,关于这件事:Django消息传递框架在我的小应用程序中不起作用。我有以下布局:
然而,我试过,我无法让消息传递起作用。我基本上复制并粘贴了Django文档中的示例,但无济于事。
代码。
base.html(缩写为必需品):
<html>
<head>
{% block extra-css %}
{% endblock %}
</head>
<body>
{% if messages %}
<ul class="messages">
{% for message in messages %}
<li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
</body>
</html>
的index.html:
{% extends "base.html" %}
views.py :( rtr只是“将render_to_response导入为rtr”)
def _importlegs(request):
f = request.FILES['file']
print "_importlegs"
messages.info(request, "Test")
return rtr('index.html', RequestContext(request))
结果是,永远不会显示“消息”块。不管我做什么。
答案 0 :(得分:1)
确保消息中间件位于MIDDLEWARE_CLASSES
,django.contrib.messages
位于INSTALLED_APPS
。如果不是,请在之后执行syncdb,以便在数据库中创建消息表。
另外,请尝试将{}
作为rtr
的第二个参数,以便RequestContext(request)
成为第三个参数。