我正在尝试通过它们到另一个输入坐标的距离来排序一堆坐标。每当我尝试订购时,我都会得到错误代码500.任何想法?
这是响应代码的图像,我圈出了与我的GET请求相关的错误代码。
这是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')
答案 0 :(得分:2)
将mimetype='application/json'
更改为content_type="application/json"
或者你可以在Django中使用JsonResponse
https://docs.djangoproject.com/en/1.8/ref/request-response/#jsonresponse-objects