Django视图似乎被调用了两次

Posted

技术标签:

【中文标题】Django视图似乎被调用了两次【英文标题】:Django view seems to be called twice 【发布时间】:2014-02-20 02:35:57 【问题描述】:

我点击了 urls.py 中定义为

的 url
url(r'getplacesnearbytest/$', api.getPlacesNearby, name='getPlacesNearby'),

来自带有帖子参数的 jQuery 帖子:

lat=51.542623&lon=-0.089851

还有一个 crsf 令牌和一个未使用的参数(在 js 中使用)。在视图方法 getPlacesNearby() 中,我打印了 post 对象和单词“end”。

print request.POST
print 'end'

结果如下,好像被调用了两次

<QueryDict: u'dest': [u'/smcore/geteventsnearbytest/'], u'lat': [u'51.542623'], u'csrfmiddlewaretoken': [u'Xc65nWy67mNxvshpmK4yTMdRIm5EaYCK'], u'lon': [u'-0.089851']>
end
[28/Jan/2014 16:38:23] "POST /smcore/geteventsnearbytest/ HTTP/1.1" 500 12248
<QueryDict: >    
end
[28/Jan/2014 16:38:23] "GET /smcore/geteventsnearbytest/ HTTP/1.1" 500 64635

客户端代码:

$('.testApisPost').on('click', function() 

  var dataObj = 
    'csrfmiddlewaretoken': $('input[name=csrfmiddlewaretoken]').val()
  

  $.each($(this).data(), function(i, v) 
    dataObj[i] = v
  );

  $.post($(this).data("dest"), dataObj, function(data)
    console.log(data)
  )
);

html:

<div class="testApisPost startLink areaBlock" data-dest="% url 'getPlacesNearby' %" data-lat="51.542623" data-lon="-0.089851" data-radius="5" data-types="food">
    This gets clicked
</div>

在我调用的方法结束时

return HttpResponse(res, content_type="application/json")

发回数据。关于为什么会发生重复的任何想法?

【问题讨论】:

重复出现在您的 javascript 代码中。请同时发布您的客户端代码。 添加了js和html 还在为此苦苦挣扎,有什么想法吗? 【参考方案1】:

我找到了为什么视图被调用两次,有一个 js 动作与来自项目早期版本的 startLink 类相关联。

感谢所有帮助过的人

【讨论】:

您能详细说明一下吗?我有同样的问题(虽然我不使用 JS - 但它仍然与 HTML/CSS 方面有关) 老实说,我完全不知道这有什么用,3 年多没碰过它

以上是关于Django视图似乎被调用了两次的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的方法在 iPhone/iPod 上被调用了两次,但在 iPad 上却没有?

Nuxt apollo 智能查询被调用了两次。引擎盖下会发生啥?

在 iOS7 上,applicationDidEnterBackground 被调用了两次

Cedar - 检查是不是使用不同的值调用了两次方法

keyboardWillShow 调用了两次

awakeFromNib() 调用了两次