我在我的网站上的两个地方使用Django评论框架。每次提交后,我都希望用户可以重定向回原来的页面。
如何定义“下一个”变量以便重定向用户?
有关重定向的信息:http://docs.djangoproject.com/en/dev/ref/contrib/comments/#redirecting-after-the-comment-post
此外,这是我正在使用的表格。 comment.types不起作用,但这就是我认为我应该做的 - 为每种评论类型(图片与餐)定义两个不同的下一个输入。
{% load comments i18n %}
<form action="{% comment_form_target %}" method="post">{% csrf_token %}
{% if comment.type == '19' %}
<input type="hidden" name="next" value="{% url meal comment.object_pk %}" />
{% endif %}
{% if comment.type == '23' %}
<input type="hidden" name="next" value="{% url picture comment.object_pk %}" />
{% endif %}
<!-- <input type="hidden" name="next" value="{{ next }}" /> -->
{% for field in form %}
{% if field.is_hidden %}
{{ field }}
{% else %}
{% if field.errors %}{{ field.errors }}{% endif %}
<p
{% if field.errors %} class="error"{% endif %}
{% ifequal field.name "honeypot" %} style="display:none;"{% endifequal %}
{% ifequal field.name "name" %} style="display:none;"{% endifequal %}
{% ifequal field.name "email" %} style="display:none;"{% endifequal %}
{% ifequal field.name "url" %} style="display:none;"{% endifequal %}
{% ifequal field.name "title" %} style="display:none;"{% endifequal %}>
<!-- {{ field.label_tag }} -->{{ field }}
</p>
{% endif %}
{% endfor %}
<p class="submit">
<button type="submit">Send</button>
<!-- <input type="submit" name="preview" class="submit-preview" value="{% trans "Preview" %}" /> -->
</p>
</form>
然后在膳食&amp;我有的图片页面:
<h4>Post a Message</h4>
{% render_comment_form for meal %}
<h4>Post a Message</h4>
{% render_comment_form for picture %}
答案 0 :(得分:2)
想出来。要使用具有多个对象的next,请使用if语句。
{% if picture %}
<input type="hidden" name="next" value="{% url picture picture.id %}" />
{% endif %}
答案 1 :(得分:0)
如果你想留在同一页面ajax是一个选项,你可以使用类似django_ajaxcomments的东西,在其他方面有很多帖子用ajax做这个。