Estoy trabajando en una aplicación de autocompletar que quiero que los usuarios puedan realizar búsquedas de direcciones a través del back-end de Django, pero de alguna manera la Api no obtiene datos a través del script, ¿por qué la carga útil no muestra ningún dato en la consola de registro sino más bien un lista vacía?, he intentado llamar a los datos desde el navegador como en el ejemplo http://127.0.0.1:8000/search/?address=val , que obtiene la respuesta de datos json con una carga útil de datos de direcciones que coinciden con mi búsqueda , pero cuando paso la url en mi javascript, devuelve una lista de datos vacía con una respuesta de 200. Mi experiencia en Js es mediocre, ya que soy novato.
<script> new Autocomplete('#autocomplete',{ search : input => { console.log(input) const url = "/search/?address=${input}" return new Promise(resolve => { fetch(url) .then( (response) => response.json()) .then( data => { console.log(data) resolve(data.data) }) }) }, onSubmit : result => { console.log(result) window.open('/search/?address=${result}') } }) </script>aquí está mi cuadro de búsqueda Html
<h4>Seacrh for places</h4> <div id="autocomplete" class="autocomplete"> <input class="autocomplete-input"/> <ul class="autocomplete-result-list"></ul> </div>mi vista para buscar
def search_address(request): address = request.GET.get('address') playload = [] if address: fake_address_objs = Address.objects.filter(address__icontains=address) for fake_address_obj in fake_address_objs: playload.append(fake_address_obj.address) return JsonResponse({'status':200 , 'data': playload })Devolvió datos vacíos en el registro de la consola
Datos devueltos en el navegador usando http://127.0.0.1:8000/search/?address=v