Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class NacimientosView(ListView):
- """Vista partidas de nacimientos pero filtrados desde un formulario"""
- # queryset = PartidaNacimiento.objects.filter(folio=457).filter(ano=1980)
- model = PartidaNacimiento
- template_name = 'rcivil/nacimientos_listado.html'
- paginate_by = 10
- ordering = 'ano'
- def get_queryset(self):
- CAMPOS = {
- 'tomo': {'lookup': 'exact', 'cast': str},
- 'folio': {'lookup': 'icontains', 'cast': str},
- 'ano': {'lookup': 'exact', 'cast': str}
- }
- # la funcion super() permite obtener el queryset del formulario
- # con este if selecciono el metodo por el cual me llega la info
- if self.request.method == 'GET':
- filtros = {campo: CAMPOS[campo]['cast'].__call__('{}__{}'.format(self.request.GET.get('campo'), CAMPOS[campo]['lookup'] for campo in self.request.GET.get.keys() if campo in CAMPOS.keys() and self.request.GET.get(campo )!=''))}
- qs = super().get_queryset()
- logging.debug(qs)
- logging.debug(filtros)
- # logging.DEBUG(CAMPOS)
- return qs
Add Comment
Please, Sign In to add comment