django消息框架不显示消息

时间:2014-11-28 01:35:28

标签: python django

我写了留言板,当用户将留言和成功留回页面时 我想提醒('谢谢')让用户知道它的成功。

但是消息没有显示

我在我的设置中添加此内容,仍然无法正常工作 TEMPLATE_CONTEXT_PROCESSORS = ("django.contrib.messages.context_processors.messages",)

请帮帮我,谢谢。

views.py

def maininfo(request):
    return render(request, 'zh_tw/maininfo.html',)

def create_post(request):
    if request.method == 'POST':
        form = MessageForm(request.POST)
        if form.is_valid():
            form.save()
            messages.success(request,'Thank you')
            return HttpResponseRedirect('/maininfo/#5thPage')
        return render(request, "zh_tw/maininfo.html",{'form': form,'anchor':'#5thPage'})

urls.py

urlpatterns = patterns('',url(r'^maininfo/$', views.maininfo, name='maininfo'),)

模板:zh_tw / contact.html
(这是zh_tw / maininfo.html包含的锚页面)

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

<form action="{% url 'core:create_post' %}" method="POST" id="create_post">
    {% csrf_token %}
    {% if not form %}
    <div>
        <input type="text" name="name" id="name" placeholder="你的名字">
        <input type="text" name="email" id="email" placeholder="你的電子信箱">
    </div>
    <textarea placeholder="你想說的話" name = "message" id="message"></textarea>
    <br>
    <button type="submit" value="Submit" id="submit">送出</button>
    {% endif %}
    {% if form %}
        {% if form.errors %}
            <div>
                <span  style="color:red ; font-weight:bold">
                {{ form.name.errors }} {{ form.email.errors }} {{ form.message.errors }} </span>
                <input type="text" name="name" id="name" placeholder="你的名字"  value="{{form.name.value }}" >
                <input type="text" name="email" id="email" placeholder="你的電子信箱" value="{{form.email.value}}">
            </div>
            <textarea placeholder="你想說的話"   name = "message" id="message">{{form.message.value}}</textarea>
            <br>
            <button type="submit" value="Submit" id="submit">送出</button>
        {% endif %}
    {% endif %}
</form>

1 个答案:

答案 0 :(得分:0)

您必须在重定向页面return HttpResponseRedirect('/maininfo/#5thPage')中添加相同的消息块 消息将正常显示!