PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Modelo Django para uma visualização do Postgres


O Django cria uma migração para cada tabela recém-adicionada em seu aplicativo, independentemente de ser um modelo gerenciado ou não. No entanto, há uma diferença muito importante e sutil quando você usa o managed=False contexto. A migração resultante é uma entrada fictícia. Ele não executa nenhum SQL.

Para confirmar isso, adicione um novo modelo não gerenciado
class Dummy(models.Model):
    something = models.IntegerField()

    class Meta:
       managed = False

agora quando você faz makemigrations seguido por sqlimigrate *myapp* *migration_number* você verá que ele não produz nenhum sql.

Se, por outro lado, você descobrir que o Django está tentando criar uma tabela para você, isso geralmente significa que você tinha o mesmo modelo antes, mas no momento em que o modelo foi gerenciado. Para confirmar isso, pesquise suas migrations pasta para VirtualTotal que é o nome do modelo em questão.