Erro no acesso aos dados da view do PostgreSql

20 views
Skip to first unread message

Ronaldo Costa

unread,
Sep 26, 2021, 11:31:13 AMSep 26
to Django Brasil
Boa tarde.

Sou iniciante e estou criando uma consulta no Django que me retorne os dados de uma view do PostgreSql, pois já existe um Banco de Dados e não tenho a intenção de criar nenhuma tabela.
O problema é que o Django não encontra o campo Id e também não tenho nenhum campo nessa view que seja chave primária. Então fica dando o erro "id não existe"
Alguém sabe como fazer essa consulta sem precisar de chave primária e também ignorar o id?

Desde já agradeço a ajuda

Abraços

xico....@gmail.com

unread,
Sep 27, 2021, 7:14:30 AMSep 27
to Django Brasil
Bom dia!
Cara, da uma olhada sobre Django Legacy Database, acredito que vc encontrar uma solução.


Pesquisa pelo termo em inglês que vai ajudar bastante tbm!

Abraço e boa sorte!

Josir

unread,
Sep 28, 2021, 6:40:04 AMSep 28
to Django Brasil
Opa! 

Se é uma view, você não vai precisar atualizar nenhum dado, correto?

Assim, você pode fazer essa construção:

class Dummy(models.Model): 
   something = models.IntegerField() 
   class Meta: 
       managed = False

Agora, se vc não vai precisar de visualizar a view pelo admin ou utilizá-la em algum template do django, você não precisa nem de um modelo! Você pode acessar diretamente via SQL:

from django.db import connection

cursor = connection.cursor()
cursor.execute('select * from tabela where filtro = %s', [ 'XUXU' ])
for row in cursor.fetchall():
   totais[ row[0] ] = row[1]
   total_geral += row[ 1 ]

Boa Sorte!

Reply all
Reply to author
Forward
0 new messages