2014-01-28 17 views
3

我打在urls.py中定义的网址为Django的观点似乎被调用两次

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

从jQuery的岗位与岗位参数:

lat=51.542623&lon=-0.089851 

连同CRSF令牌和一个未使用的参数(在js中使用)。在view方法getPlacesNearby()中,我打印后对象和单词'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") 

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

+0

重复很可能在您的Javascript代码中。请发布您的客户端代码。 – lanzz

+0

添加了js和html –

+0

仍在苦苦挣扎,有什么想法? –

回答

0

我已经找到了为什么这个视图被调用两次,有一个js操作绑定到来自该项目早期版本的startLink类。

感谢所有那些帮助

+0

你能否详细说明一下?我有同样的问题(虽然我不使用JS - 但它仍然绑定到HTML/CSS方面) –

+0

说实话,我完全不知道这是什么,还没有触及它在3年份 –

+0

是的,我破解它:https://stackoverflow.com/a/45115993/4936905 –