Как вернуть связанное значение из базы данных после щелчка функции ajax в django?

html

  <div>           
  
 {{ productform.vendorid|as_crispy_field }}<a id="vendor_id_search" class="btn btn-info">search</a></br>
    
    <div style="display:none;" id="show_vendorname">hjkh</div><br>
 </div>
 


 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>




 <script>
$("#vendor_id_search").click(function (event) {
    event.preventDefault();
    var vendor_id = $("#id_vendorid").val();

  $.ajax({
    url: '/ajax/find_vendorname/',
    method: 'GET',
    data: {
      'vendor_id': vendor_id
    },
    dataType: 'json',
    success: function (data) {
        $("#show_vendorname").show(data)
    }
  });

});

views.py

 #vendor_name_find_ajax
 def find_vendorname(request):
     if request.is_ajax():
         vendorid = request.GET.get('vendor_id', None)
         username = CustomUser.objects.filter(first_name=vendorid)
         return username

Я хочу отобразить связанное имя из таблицы базы данных для этого vendorid после того, как пользователь ввел поле vendorid и нажал на кнопку, связанное имя должно быть отображено на этом конкретном div. Здесь я допустил ошибку и не знаю, как получить это значение. пожалуйста, кто-нибудь, сделайте нужное.

$("#show_vendorname").show(data) снимите скрытие div, но не вставляйте данные.

Вам необходимо установить данные перед этим с помощью $.html()

$("#show_vendorname").html(data).show()

EDIT:

Кроме того, ваше представление должно возвращать HttpResponse:

from django.http import HttpResponse

def find_vendorname(request):
     if request.is_ajax():
         vendorid = request.GET.get('vendor_id', None)
         username = CustomUser.objects.filter(first_name=vendorid)
         return HttpResponse(username)
Вернуться на верх