O PostgreSQL é uma das melhores escolhas para um ambiente de armazenamento seguro. Aprenda como integrá-lo ao Django.

Adicionar um banco de dados ao seu aplicativo garante a integridade e a segurança dos dados. PostgreSQL (Postgres) é um sistema de gerenciamento de banco de dados Structured Query Language (SQL) que você pode querer considerar.

Postgres suporta a maioria dos sistemas operacionais populares e é compatível com linguagens de programação modernas. O Postgres também lida com vários tipos de dados e documentos. Com habilidades de SQL em alta demanda, aprender a configurar e usar o PostgreSQL é uma vantagem.

Você aprenderá como instalar, configurar e usar o Postgres em um aplicativo Django. Você também testará a funcionalidade do banco de dados adicionando, armazenando e recuperando dados do banco de dados.

1. Instale o PostgreSQL em seu sistema

As instruções a seguir explicam como instalar o Postgres no sistema operacional Ubuntu. Se você é um usuário do Windows, você pode seguir este guia passo a passo para instalar o Postgres no Windows.

instagram viewer

Antes de instalar o Postgres, atualize os pacotes de versão e suas dependências com o seguinte comando:

$ sudo apt-get update

Em seguida, instale o PostgreSQL com o seguinte comando:

$ sudo apt-get install postgresql postgresql-contrib libpq-dev

Quando solicitado a confirmar a instalação, pressione Y para Sim.

Conecte-se ao servidor usando o seguinte comando:

$ sudo -i -u postgres

Em seguida, use o cliente de banco de dados para determinar a versão do Postgres instalada.

Execute o comando psql --versão.

postgres@nameofaccount:~$ psql --version

A saída mostrará sua versão do Postgres conforme mostrado abaixo:

psql (PostgreSQL) 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)

Saia da conta Postgres executando o saída comando.

postgres@nameofaccount:~$ exit

2. Criar um banco de dados

Você precisa criar um banco de dados que conectará a um aplicativo Django. Navegue de volta ao shell do Postgres e execute os seguintes comandos consecutivamente.

sudo -i -u postgres
$ psql

Em seguida, use o cliente para criar um banco de dados no servidor.

postgres=# create database new_db;

O servidor retorna o termo CREATE DATABASE quando cria um banco de dados. Você também pode verificar por listando todos os bancos de dados no sistema com o comando \eu.

postgres=# \l

Estrutura do PostgreSQL

Como um banco de dados SQL típico, o PostgreSQL armazena dados em tabelas. As tabelas representam diferentes itens/modelos em uma aplicação. As tabelas têm um número fixo de colunas e linhas.

Cada tabela possui uma coluna específica chamada chave primária, um identificador exclusivo para cada linha armazenada na tabela. Uma tabela também pode ter uma chave estrangeira conectando-a à chave primária de outra tabela.

As chaves estrangeiras definem os relacionamentos entre duas tabelas.

Em seguida, você precisa criar um aplicativo Django e vincular o banco de dados. Mas primeiro, instale psicopg2 para ajudar a conectar o aplicativo e o banco de dados.

3. Instale a biblioteca Django e Psycopg2

Para conectar o Postgres a um aplicativo Django, você precisa instalar o psicopg2 biblioteca. Esta é uma dependência do Postgres que ajuda a conectar e se comunicar com o Django.

Execute o seguinte comando para instalar psicopg2 e Django:

$ pipenv install psycopg2 Django

4. Criar um aplicativo Django

Você precisa criar um aplicativo Django que usará o banco de dados Postgres. Primeiro, crie um projeto chamado miboma para apoiar o aplicativo. Os projetos Django geram automaticamente dependências e configurações de aplicativo necessárias para executar o aplicativo.

Crie uma pasta chamada Boma-watch e navegue até ele com os seguintes comandos:

$ mkdir Boma-watch
$cd Boma-watch

Em seguida, crie um projeto Django com o seguinte comando:

$ django-admin startproject myboma .

Certifique-se de adicionar o ponto final no final do comando, senão o Django criará uma nova pasta para abrigar o projeto.

Em seguida, crie um novo aplicativo chamado boma com o seguinte comando:

$ django startapp boma

Se você nunca trabalhou com Django antes, você pode comece com um guia para iniciantes em Django. Depois de executar o aplicativo no navegador para confirmar se está funcionando, você o conectará ao banco de dados na próxima seção.

5. Conectar banco de dados ao aplicativo Django

Agora você conectará seu aplicativo Django ao banco de dados que criou usando as seguintes etapas:

Etapa 1: alterar as configurações do projeto para usar o Postgres

Você deve alterar as configurações do projeto para conectar o aplicativo Django ao Postgres. Navegue até o projeto settings.py arquivo. Em seguida, altere o BANCOS DE DADOS settings para adicionar suas configurações do Postgres.

Substitua o DO UTILIZADOR e SENHA com o seu psql usuário e senha.

#...
DATABASES = {
'default': {
'ENGINE':'django.db.backends.postgresql',
'NAME':'new_db',
'USER':'morine',
'PASSWORD':'password',
}
}

Etapa 2: atualize o fuso horário

A seguir, no settings.py arquivo, defina o Fuso horário para refletir sua localização. Os projetos Django são pré-configurados com o fuso horário UTC.

TIME_ZONE = Africa/Nairobi

Etapa 3: criar um modelo

Criar uma Perfil modelo em seu aplicativo. Você usará essa classe de modelo para criar tabelas no banco de dados para armazenar o nome e os dados biográficos do aplicativo.

classProfile(models.Model):
name = models.CharField(max_length=30)
bio = models.TextField(max_length=100)

def__str__(self):
return self.name

Etapa 4: iniciar a migração

Execute os seguintes comandos para iniciar a migração:

(virtual)$ python manage.py makemigrations boma 
(virtual)$ python manage.py migrate

Uma migração bem-sucedida ficará assim:

python manage.py migrar comando escolhe o aplicativo do INSTALLED_APPS configurações > arquivos models.py e cria tabelas para cada modelo. Você conectou com sucesso o Postgres ao seu aplicativo.

Agora, você pode testar os comandos CREATE, READ, UPDATE e DELETE (CRUD) em seu aplicativo.

6. Teste os comandos CRUD em seu aplicativo

A API Python do Django permitirá que você execute algumas operações de banco de dados CRUD. A API conecta as funções com os modelos para permitir que você manipule o banco de dados.

Abra o shell Python no projeto Django usando o seguinte comando:

(virtual)$ python manage.py shell

O comando abrirá um console onde você poderá testar as operações CRUD.

Criar operação

Primeiro, importe o Perfil modelo do modelos módulo usando o seguinte comando:

 from boma.models import Profile

Em seguida, crie uma instância do Perfil class e passe seus dados.

 prof1 = Profile.objects.create(name ='Ken',bio ='I am a Scorpio')

Em seguida, salve os dados no banco de dados.

prof1.save()

operação de leitura

Depois de criar dados no banco de dados e salvá-los, você pode consultá-los para recuperar os dados salvos.

Use o Profile.objects.all() para recuperar todos os dados do Perfil tabela no banco de dados.

Profile.objects.all() #outputs 

Você também pode recuperar um único objeto usando um chave primária ou pacote. Estes são números atribuídos a cada item salvo no banco de dados.

Profile.objects.get(pk = 1) #outputs 

Operação de atualização

Você pode atualizar os dados salvos usando o seguinte comando:

Profile.objects.filter(id = 1).update(name ='Kim';) #outputs 1

Para verificar se o nome foi atualizado, execute o seguinte comando:

Profile.objects.filter(id = 1) #outputs 

Excluir operação

Você pode excluir itens salvos usando o seguinte comando:

Profile.objects.filter(id = 1).delete() #outputs (1, {app.Profile: 1})

Para confirmar a exclusão, execute o seguinte comando:

Profile.objects.filter(id = 1) #outputs 

Você pode ver que o conjunto de consultas está vazio, indicando que os dados não estão mais no banco de dados.

Por que usar o PostgreSQL?

O Postgres é um dos bancos de dados SQL mais avançados. Suas compilações de código aberto garantem melhorias constantes de desempenho.

O gerenciamento de cargas de trabalho é mais fácil e a classificação do banco de dados fica melhor a cada versão. Uma das razões pelas quais o Postgres é popular é porque ele é compatível com a maioria das linguagens de programação e sistemas operacionais modernos.