在Django中使用Ajax时陷入困境

时间:2019-02-19 14:47:17

标签: python ajax django

我正在尝试使用Ajax来验证数据库中是否已经存在字段的值。

urls.py:

#App Auxiliares_Tipos:
path('ajax/validar_tipaux/', validar_tipaux),
path('Tipos_de_auxiliares/', tipoAuxi),

views.py:

def validar_tipaux(request):
    codigo = request.GET.get('codigo', None)
    print(codigo)
    data = {
        'is_taken': TipoAux.objects.filter(codigo__iexact=codigo).exists()
    }
    return JsonResponse(data)

validation.js包含在我的HTML正文中。

validation.js:

$("#id_codigo").change(function () {
    var tipaux = $(this).val();
    console.log(tipaux);
    $.ajax({
        url: '/ajax/validar_tipaux/',
        data: {
            'tipaux': tipaux
        },
        dataType: 'json',
        success: function (data) {
            if (data.is_taken) {
                console.log('Existe');
                alert("That value is already taken.");
            }
        }
    });
});

id_codigo是我正在检查Ajax是否存在的字段的ID。

错误:它几乎可以工作,JavaScript可以正确检测id_codigo上的更改(我正尝试使用print / console.log检查所有内容)。但是它卡在视图validar_tipaux中,并在其中显示作为codigo的值。 怎么了?

1 个答案:

答案 0 :(得分:2)

您以tipaux的形式发送数据,但视图正在寻找codigo