jquery - 如何在 Django 中发布 jQuery 后呈现上一页

标签 jquery python html django url

我正在构建一个将主题、问题和答案联系起来的网站。每个问题都与一个主题相关联,每个问题都回答一个问题,依此类推。在主页上,我单击一个主题,它会将我带到一个基于 topic_id 的动态 URL。

url(r'^(?P<topic_id>\d+)/$', 'questions'),

当我添加问题时,jQuery 灯箱会在弹出窗口中呈现此 URL

url(r'^(?P<topic_id>\d+)/add_question/$', 'add_question'),

提交问题后,它会通过 add_question.html

#add_question.html    
<div class="questionPopupForm">
    <h5><div class="questionPopupTitle"> Add Question</div></h5>
    <form action = "/home/{{ form.topic.id }}/add_question/" method = "post">{% csrf_token %}
        <p>{{ form.as_p }}</p>
        <p><div class="addQuestionButton"><input type = "submit" value = "Ask Question"     class="btn btn-success" /></div></p>
        <input type = "hidden" name = "next" value = "{{ next|escape }}" />
    </form>
</div>

提交后,操作会将我带到/home/{{ form.topic.id }}/add_question,这是上面的 URL,链接到 add_question View 。

#views.py
def add_question(request, topic_id):
    if request.method == "POST":
        form = QuestionForm(request.POST, request.FILES)
        if form.is_valid():
            question = form.save(user = request.user)
            question.topic = Topic.objects.get(pk = topic_id)
            question.save()
            return HttpResponseRedirect("/home/")
    else:
        form = QuestionForm()
        form.q_author = request.user
        form.movie = Topic.objects.get(pk = topic_id)
    return render_to_response("qanda/add_question.html", {'form': form}, context_instance = RequestContext(request))

现在,它返回 HttpResponeRedirect('/home/') 带我回家。我想做的是将用户重定向回同一页面,但 URL 中有一个变量 (/{{ topic.id }}/),但 HttpResponseRedirect 不允许我将变量放入其中。如何返回同一页面?

最佳答案

HttpResponseRedirect 需要一个字符串(在本例中为 URL),但您可以即时构建它。例如:

return HttpResponseRedirect("/%s/" % topic.id)

关于jquery - 如何在 Django 中发布 jQuery 后呈现上一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13203771/

相关文章:

jquery - 如何使用 JQuery 解析带有命名空间的 xml(并适用于所有浏览器 ..)?

jquery - 根据所选下拉菜单隐藏和显示 div

jquery - CSS 滤镜模糊 : Prevent Undefined Image Edges on a Blurred Image during CSS Transition

python - django UserCreationForm 不保存

python - 为什么如果使用列表理解该函数不会更新列表,但在使用 for 循环时会更新列表

html - 将 View 模型传递给我的操作时如何使用 pagedlistpager

javascript - 日期代码仅适用于 Chrome

python - 用随机数填充numpy数组的最快方法

javascript - 导航栏悬停,显示子导航 html

html - XHTML 真的可扩展吗?