Hola, Debo realizar una consulta o una opción de búsqueda por varios parámetros y no lo puedo hacer.
Esta es las lineas de código que había utilizado para que en una sola opción me permite buscar por Nombre, Apellido y Nro de CI. Pero me solicitan buscar por separado:
Nombre: *****
Apellido: ******
NCI: ****** que seria el numero de documento.
Código Python:
Ver original@login_required
def BuscarPersona(solicitud):
if 'consulta' not in solicitud.GET:
return ListView.as_view(queryset = DatosPersonalesBasicos.objects.none(), template_name = "paciente_buscar.html")(solicitud)
orden = solicitud.GET.get('orden', 'tipo')
orden = orden if orden in ['Nombre', 'Apellido'] else 'tipo'
consulta = solicitud.GET["consulta"]
consulta = Q(Nombre__icontains = consulta)| Q(Apellido__icontains = consulta) | Q(Cedula__icontains = consulta)
qs = DatosPersonalesBasicos.objects.filter(datosagresor = None).filter(consulta)
if orden == 'tipo':
qs = list(combinar(qs.exclude(datosinfantiles = None), qs.exclude(datosdepacienteadolescente = None), qs.exclude(datosdepacienteadulto = None)))
else:
qs = qs.order_by(orden)
return BuscarPersonaResultados.as_view(extra={"consulta": solicitud.GET["consulta"], 'orden': orden}, queryset = qs, template_name = "paciente_buscar.html", paginate_by = 30)(solicitud)