turicas/brasil.io

Criar filtros mais flexíveis (frontend e API)

Open

#110 opened on Jul 6, 2018

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Python (150 forks)github user discovery
enhancementhelp wanted

Repository metrics

Stars
 (1,032 stars)
PR merge metrics
 (PR metrics pending)

Description

Atualmente os filtros nos dados de datasets são apenas de "match", ou seja, a usuária passa um valor e ele filtra por registros com aquele exato valor. Essa abordagem não é muito útil no caso de datas, em que uma usuária gostaria de passar uma faixa de valores, ou ainda no caso dos campos "choices", em que é interessante selecionar vários dos valores ali (exemplo: selecionar vários partidos na tabela de candidatos, dataset eleicoes-brasil). O mesmo vale para as requisições na API

Essa alteração demandaria também mudanças na interface, dado que o ideal seria termos date pickers e selects com checkboxes dentro.

Nota: no momento os filtros estão sendo feitos com um método específico (apply_filters) e não com algo genérico, como a biblioteca django-filter, que facilitaria esse tipo de filtro. Em algum momento tentei utilizar o django-filter, mas como estamos usando models criados dinamicamente, não consegui fazer funcionar (porém não tentei muito); talvez o caminho seja abandonar essa abordagem atual e usar o django-filter.

Contributor guide