Django http响应代码500错误

时间:2015-05-22 23:18:30

标签: javascript python django

我正在尝试通过它们到另一个输入坐标的距离来排序一堆坐标。每当我尝试订购时,我都会得到错误代码500.任何想法?

这是响应代码的图像,我圈出了与我的GET请求相关的错误代码。

enter image description here

这是Django模板中的Javascript:

function searchWaypoints() {
    geocoder.geocode({
        'address': $('#address').val()
    }, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            var position = results[0].geometry.location;
            $.get("{% url 'waypoints-search' %}", {
                lat: position.lat(),
                lng: position.lng()
            }, function (data) {
                if (data.isOk) {
                    $('#waypoints').html(data.content);
                    waypointByID = data.waypointByID;
                    activateWaypoints();
                } else {
                    alert(data.message);
                }
            }, 'json');
        } else {
            alert('Could not find geocoordinates for the following reason: ' + status);
        }
    });
}
$('#searchWaypoints').click(searchWaypoints);
$('#address').keydown(function(e) {
    if (e.keyCode == 13) searchWaypoints();
});

这是urls.py“

urlpatterns = patterns('waypoints.views',
    url(r'^$', 'index', name='waypoints-index'),
    url(r'^save$', 'save', name='waypoints-save'),
    url(r'^search$', 'search', name='waypoints-search'),
)

这是views.py中的视图:

def search(request):
    'Search waypoints'
    # Build searchPoint
    try:
        searchPoint = Point(float(request.GET.get('lng')), float(request.GET.get('lat')))
    except:
        return HttpResponse(simplejson.dumps(dict(isOk=0, message='Could not parse search point')))
    # Search database
    waypoints = Waypoint.objects.distance(searchPoint).order_by('distance')
    # Return
    return HttpResponse(simplejson.dumps(dict(
        isOk=1,
        content=render_to_string('waypoints/waypoints.html', {
            'waypoints': waypoints
        }),
        waypointByID=dict((x.id, {
            'name': x.name,
            'lat': x.geometry.y,
            'lng': x.geometry.x,
        }) for x in waypoints),
    )), mimetype='application/json')

1 个答案:

答案 0 :(得分:2)

mimetype='application/json'更改为content_type="application/json"

或者你可以在Django中使用JsonResponse

https://docs.djangoproject.com/en/1.8/ref/request-response/#jsonresponse-objects