You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hoje o trigger que popula o vetor search_data só funciona se apenas colunas de texto (TextField e CharField) estiverem como searchable = True; se alguma coluna IntegerField (ou de outro tipo) estiver habilitada para busca, temos um erro durante a importação dos dados:
$ python manage.py import_data --no-input socios-brasil cnae_cnpj data/output/cnae_cnpj.csv.gz
Importing data to new table data_sociosbrasil_cnaecnpj_eujzfrcz
Importing data: 2.53Gbytes [01:07, 37.3Mbytes/s]
ERROR: ERROR: column "cnae" is not of a character type
CONTEXT: COPY data_sociosbrasil_cnaecnpj_eujzfrcz, line 2: "00000000000191,6422100,t"
Precisamos alterar o trigger para que ele consiga também indexar colunas não textuais. Essa resposta no stackoverflow parece dar conta do recado (teríamos que criar uma função específica para cada Table), que parece ser baseada na documentação do PostgreSQL (exemplo no fim da seção "12.4.3. Triggers for Automatic Updates").
Exemplo de arquivo para ser importado (cnae_cnpj.csv):
Exemplo de fields.csv (para ser importado com python manage.py update_fields_from_csv):
dataset_slug,description,searchable,frontend_filter,has_choices,link_template,order,null,name,options,obfuscate,show,show_on_frontend,table_name,title,type,version_name
socios-brasil,CNPJ da empresa,True,True,False,/especiais/documento/{{ cnpj|encrypt_if_needed }},1,False,cnpj,"{""max_length"": 14}",False,True,True,cnae_cnpj,CNPJ,string,2020
socios-brasil,CNAE associada à empresa,True,True,False,,2,False,cnae,{},False,True,True,cnae_cnpj,CNAE,integer,2020
socios-brasil,Indicativo se a CNAE é primária (fiscal) para essa empresa,False,True,True,,3,False,primaria,{},False,True,True,cnae_cnpj,CNAE é primária (fiscal)?,bool,2020
Hoje o trigger que popula o vetor
search_data
só funciona se apenas colunas de texto (TextField
eCharField
) estiverem comosearchable = True
; se alguma colunaIntegerField
(ou de outro tipo) estiver habilitada para busca, temos um erro durante a importação dos dados:Precisamos alterar o trigger para que ele consiga também indexar colunas não textuais. Essa resposta no stackoverflow parece dar conta do recado (teríamos que criar uma função específica para cada
Table
), que parece ser baseada na documentação do PostgreSQL (exemplo no fim da seção "12.4.3. Triggers for Automatic Updates").Exemplo de arquivo para ser importado (
cnae_cnpj.csv
):Exemplo de
fields.csv
(para ser importado compython manage.py update_fields_from_csv
):Para reproduzir:
The text was updated successfully, but these errors were encountered: