Considerações sobre implementação
Quando você implanta um aplicativo para produção na nuvem, você tem algumas considerações. Você precisa determinar como implantar o aplicativo e qual banco de dados usar. Você também precisa garantir que o ambiente de produção esteja pronto.
Opções de implementação
Você pode implantar no Azure de várias maneiras. Uma das maneiras mais convenientes é usar uma destas extensões para o Visual Studio Code:
Os Bancos de Dados do Azure permitem que você crie o servidor de banco de dados e o banco de dados. O Serviço de Aplicativo do Azure permite que você crie, configure e implante no host da Web.
Considerações sobre a base de dados
O Django foi projetado para aplicações web orientadas por dados. Assim, cada projeto Django geralmente inclui um banco de dados. Durante o desenvolvimento, você normalmente usa SQLite, que é um mecanismo de banco de dados baseado em arquivo.
SQLite é uma solução perfeita para desenvolvimento porque não requer instalação ou serviços especiais. Mas os requisitos para a produção normalmente incluem escala, desempenho e confiabilidade. O SQLite não foi projetado para gerenciar esses requisitos de produção.
O Django suporta nativamente muitos bancos de dados, incluindo MySQL, PostgreSQL e MariaDB. Você também pode encontrar provedores para habilitar o suporte para SQL Server, MongoDB e muitos outros bancos de dados.
Ao criar o arquivo de configurações de produção, você configurou o ambiente para PostgreSQL. PostgreSQL é um dos bancos de dados mais populares para Django. Também é suportado pelo Azure.
Criar o esquema da base de dados
O Django gerencia o esquema de banco de dados por meio de migrações. O Django pode gerar o SQL para criar ou pode atualizar o esquema. Ou você pode usar o makemigrations
comando para fazer o Django atualizar o banco de dados diretamente.
Para executar migrações no banco de dados, você pode proteger o shell (ou SSH) no Serviço de Aplicativo. Esse método permite que você execute comandos no host da Web da maneira como você os executa localmente.