如何在django项目中使用apache显示搜索结果?

gcuhipw9  于 12个月前  发布在  Go
关注(0)|答案(1)|浏览(121)

我在一个Django项目中工作,其中一个功能是用户可以搜索一个名称(使用表单),视图将在数据库中搜索该名称(经过一些转换),结果将显示在表单下方。
目前,这是不必要的,整个页面加载每次搜索提交.我在apply approach使这个动态.问题是,当我返回搜索结果作为JsonResponse,我无法看到数据在approach的成功函数.

视图.py

def indexView (request):
    form = FriendForm ()
    friends = Friend.objects.all ()
    return render (request, "index.html", {"form": form, "friends": friends})

def searchFriend(request):
    if request.method =="POST":
        form = FriendForm (request.POST)

        if form.is_valid():
            if request.is_ajax():
                name = form.cleaned_data['name']
                query = Friend.objects.filer(first_name__contains=name)

                print(query)
                return JsonResponse(list(query), safe=False)

            else:
                return JsonResponse(form.errors)

字符串

Main.js

$(document).ready(function() {
    $("#form1").submit(function() { // catch the form's submit event
    var search = $("#searchField").val();
    

        $.ajax({ // create an AJAX call...
            data: $(this).serialize(), // get the form data
            method: 'post',
            dataType: 'json',
            url: "search/ajax/friend/",
            success: function(data) { // on success..
                console.log(data)
              
            }
        });
        return false;
    });
});

cwdobuhd

cwdobuhd1#

您的查询是否在终端中打印?Friend.objects.filer使用filter而不是filer,使用type: 'post'而不是method: 'post',,并添加data: $(search).serialize(),而不是data: $(this).serialize(),

相关问题