Я пытаюсь отправить запрос на просмотр django, но он продолжает возвращаться INTERNAL SERVER ERROR 500
.django POST return Internal Server 500 error
Мой Аякса пост:
$.ajax({
url : "/loginAction/",
type : "POST",
async : false,
data : {action:'loginAction',
email:email,
password:password},
success : function(response) {
$.niftyNoty({
type:"success",icon:"",title:"Login Successful. Redirecting....",container:"floating",timer:5000
});
},
error : function(xhr,errmsg,err) {
console.log(xhr.status + ": " + xhr.responseText);
$.niftyNoty({
type:"danger",icon:"",title:"Wrong Email OR Password",container:"floating",timer:5000
});
}
});
мой взгляд Джанго:
def loginAction(request):
print "Its workjing"
if request.method == 'POST' and 'loginButton' in request.POST:
email = request.POST.get('email')
password = request.POST.get('password')
print email, password
return HttpResponse(json.dumps({}),content_type="application/json")
Мой urls.py
urlpatterns = [
url(r'^', views.loginPage, name='loginPage'),
url(r'^loginAction/', views.loginAction, name='loginAction')
]
POST-Аякса не ударять вид Джанго. Это не печать Its working
в консоли. Таким образом, он не возвращает ответ json на вызов ajax. Я также пробовал обычную форму POST, но тот же результат. Я использую django 1.9.2. Я не могу понять, почему эта ошибка?
возвращает этот код ошибки:
Internal Server Error: /loginAction/
Traceback (most recent call last):
File "/home/manish/Desktop/admin_picknbox/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 158, in get_response
% (callback.__module__, view_name))
ValueError: The view login_app.views.loginPage didn't return an HttpResponse object. It returned None instead.
EDIT: Аякса Заголовок:
jQuery(document).ready(function($){
$.ajaxSetup({
beforeSend: function(xhr, settings) {
if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}
}
});
});
Хорошо, тогда он должен печатать 'Свою работу' в консоли, но это не печать. Он отлично работает в django 1.8.5, поэтому я не имею ничего общего с POST catch –
Я отредактировал свой ответ. –
Я уже прошел csrftoken в заголовке ajax, используя этот метод: См. Вопрос –