首页 > 解决方案 > 返回 JSON 响应而不重定向

问题描述

我是 django 的新手,我试图在不重定向的情况下更新我的视图中的字段,我试图在调用视图函数时返回一个 JSON 文件,但我似乎无法找到如何在没有重定向的情况下这样做到一些网址。

我认为这可能与我的 urls.py: ... path('#', views.myFunction, name='myFunctionName') 有关。

我正在搞乱 djangoproject.com 中出现的 django 教程

<h1>{{ question.question_text }}</h1>
<ul>
{% for choice in question.choice_set.all %}
<li>{{ choice.choice_text }} -- {{ choice.votes }} vote{{ choice.votes|pluralize }}</li
{% endfor %}
</ul>
<a href="{% url 'polls:detail' question.id %}">Vote again?</a>
<a href="{% url 'polls:myfunction' %}">doFunction</a>

我的视图功能是这样的:

def myfunction(request):
    return JsonResponse({'ayy':'lmao'})

和 urls.py:

from django.urls import path


from . import views

app_name = 'polls'
urlpatterns = [
path('', views.IndexView.as_view(), name='index'),
path('<int:pk>/', views.DetailView.as_view(), name='detail'),
path('<int:pk>/results/', views.ResultsView.as_view(), name='results'),
path('<int:question_id>/vote/', views.vote, name='vote'),
path(r'#', views.myfunction, name='myfunction'),
path('form', views.FormView.as_view(), name='form'),

标签: jsonajaxdjango

解决方案


所以这里最有可能发生的是 Django URLS 正在查找索引页面并重定向到该视图。# 磅或数字符号通常表示页面中的重定向。


推荐阅读