成功が期待どおりに機能しない ajax 呼び出しに問題があります。コンソールを確認し、サーバー側のスクリプトが取得して応答しています。また、コンソールに応答を表示するために console.debug 呼び出しを行いました。そして何も起こりません。恐怖を読んだ後、エラーが見つかりませんでした。それについて私を助けてもらえますか?
私のアヤックス
$.ajax({
url: '{% url 'credentials.ajax.users_save' %}',
type: 'post',
dataType: 'json',
data: {
user_id: $('#user_id').val(),
username: $('#username').val(),
password: $('#password').val(),
last_name: $('#last_name').val(),
first_name: $('#first_name').val(),
email: $('#email').val(),
address: $('#address').val(),
phone_office: $('#phone_office').val(),
phone_home: $('#phone_home').val(),
expiration: $('#expiration').val(),
},
success: function (msg) {
console.debug(msg)
if ( msg == false || parseInt(msg) == 0) {
$.pnotify({
title: '{% trans 'Error' %}',
text: '{% trans 'There were a error, please try again' %}',
type: 'error'
});
} else {
$.pnotify({
title: '{% trans 'Congrats' %}',
text: '{% trans 'User has been create' %}',
type: 'success'
});
$('#modalCreateUser').modal('hide');
window.setTimeout(function(){location.reload()}, 2000)
}
}
});
私のサーバー側機能
def users_save (request):
try:
if request.is_ajax() and request.POST:
user_id = request.POST['user_id']
s = get_current_site(request)
print s.id
u = User (
username = request.POST['username'],
first_name = request.POST['first_name'],
last_name = request.POST['last_name'],
email = request.POST['email']
)
u.set_password(request.POST['password'])
up = UserProfile(
address = request.POST['address'],
phone_home = request.POST['phone_home'],
phone_office = request.POST['phone_office']
)
up.user = u
up.site = s
#up.save()
u.save()
return HttpResponse(True, mimetype='application/json')
except:
return HttpResponse(False, mimetype='application/json')