1
I am trying to create a new person from a .csv. file My code is as follows:.
models
TIPO_PESSOA = [
('PF', 'Pessoa Física'),
('PJ', 'Pessoa Jurídica'),
]
class Pessoa(models.Model):
nome_razao_social = models.CharField(max_length=255)
tipo_pessoa = models.CharField(max_length=2, choices=TIPO_PESSOA)
views
def importar_csv(self, request):
csv_file = request.FILES['file']
data_set = csv_file.read().decode('UTF-8')
io_string = io.StringIO(data_set)
next(io_string)
colunas_csv = csv.reader(io_string, delimiter=',', quotechar="|")
qtd_colunas = 0
dados = {}
for column in colunas_csv:
dados['nome_razao_social'] = column[0]
messages.success(request, str(qtd_colunas) + column[1])
dados['tipo_pessoa'] = column[1]
qtd_colunas += 1
form = PessoaForm(dados)
if form.is_valid():
form.save()
messages.success(request, str(qtd_colunas) + " pessoas cadastradas com sucesso!")
else:
messages.error(request, 'Não foi possível importar, verifique os dados da tabela.')
And I’m trying to import the following file .csv
nome_razao_social,tipo_pessoa
Fernando,PF
Only my form is not validating because it is not creating the Pessoa
with the guy PF
, which would be a natural person. How do I accept a value that has options to be selected, as in this case?