UnboundLocalError - локальная переменная 'emprendedores' ссылается перед присвоением
Я не могу понять, почему я получаю это сообщение об ошибке: "UnboundLocalError - локальная переменная 'emprendedores' ссылается перед присвоением"
>введите описание изображения здесь
Здравствуйте, я создаю приложение на Django и почти все получается. Однако, я не могу найти решение проблемы в моем представлении поиска. Основная идея заключается в том, чтобы позволить пользователю указать слово и выбрать нужные поля для поиска из формы, и возвращать зарегистрированных пользователей, которые удовлетворяют критериям.
html-файл выглядит следующим образом:
введите описание изображения здесь
Это модель:
введите описание изображения здесь
и вот вид, над которым я работаю:
введите описание изображения здесь
Но я не могу понять, почему я получаю это сообщение об ошибке: "UnboundLocalError - локальная переменная 'emprendedores' ссылается перед присвоением"
>введите описание изображения здесь
Буду рад, если кто-то сможет мне помочь.
Это ошибка:
UnboundLocalError at /consulta/
локальная переменная 'emprendedores' ссылается до присвоения
Метод запроса: POST
URL запроса: http://127.0.0.1:8000/consulta/.
Версия Django: 3.2.8
Тип исключения: UnboundLocalError
Значение исключения:
локальная переменная 'emprendedores' ссылается до присвоения
Местоположение исключения: C:\Users\Jobert Gutierrez\Documents\PROYECTOS\DESPRO\BARDEP\views.py, line 112, in Consulta
Python Executable: C:\ProgramData\Anaconda3\python.exe
Версия Python: 3.9.7
Это вид:
def Consulta(request):
if request.method == "POST":
#fields = Emprendedores._meta.get_fields()
fields = request.POST.getlist('campos')
busqueda = request.POST['busqueda']
query = Q()
if (busqueda.isnumeric()):
emprendedores = Emprendedores.objects.filter(numerodocumento__contains=busqueda)
messages.success(request,("No existen coincidencias para su búsqueda"))
else:
for columna in fields:
if columna in Emprendedores._meta.get_fields():
condicion = {f'{columna}__icontains': busqueda }
query |= Q(**condicion)
query.connector = 'OR'
emprendedores = Emprendedores.objects.filter(query)
elif columna in SectorEconomico._meta.get_fields():
query1 = SectorEconomico.objects.filter(nombresector__icontains=busqueda)
emprendedores = Emprendedores.objects.filter(sectoreco__pk=F('query1__pk'))
return emprendedores
return emprendedores
return render(request,'buscados.html',{'emprendedores':emprendedores})
else:
return render(request,'consulta.html')
Как я могу отправить его в представление?