【问题标题】:Unclear 404 get ajax error passing integer to django将整数传递给 django 的 404 获取 ajax 错误
【发布时间】:2016-11-27 01:31:12
【问题描述】:

完全不清楚 404 Ajax 错误。

var int_page_number = 2;
  $.ajax({
        type:'GET',
        url: '/loadmore/',
        data: { 'page_number' : int_page_number},
        dataType: 'json',
        success: function (data) {

            alert(data);          


            }
});

在传递数据的地方,我尝试使用撇号而不是page_number。它是 404,所以错误可能出现在 frontedn 中,但无论如何我附上 django urls.py 字符串以防万一:

 url(r'^loadmore/(?P<page_number>[0-9]+)/$', views.loadmore),

还有views.py函数,就可以了:

@api_view(['GET', ]) 
def loadmore(request,page_number):
    answers_to_questions_objects = Question.objects.filter(whom=request.user.profile).filter(answered=True).order_by('-answered_date')
    paginator = Paginator(answers_to_questions_objects,10)
    current_page = (paginator.page_number)
    answers = serializers.serialize('json', current_page)
    data = {
        'answers': answers

    }
    return Response(data)`

【问题讨论】:

    标签: python ajax django


    【解决方案1】:

    对于您的 url,您应该像 /loadmore/2/ 这样调用 url,但您像 /loadmore/?page_number=2 这样调用。所以你的ajax应该是这样的:

    var int_page_number = 2;
    $.ajax({
        type:'GET',
        url: '/loadmore/' + int_page_number + '/',
        success: function (data) {
            alert(data);  
        }
    });
    

    【讨论】:

      猜你喜欢
      • 2017-12-01
      • 2015-12-07
      • 2018-09-27
      • 1970-01-01
      • 2014-10-18
      • 2012-10-09
      • 2020-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多