Introdução
O Django é um framework web gratuito e de código aberto escrito em Python, com seus princípios fundamentais sendo escalabilidade, reutilização e desenvolvimento rápido. Também é conhecido por sua consistência em nível de framework e acoplamento frouxo, permitindo que os componentes individuais sejam independentes entre si.
Neste tutorial, você irá configurar um ambiente Django para fins de desenvolvimento em um servidor Ubuntu 22.04. Para um site ao vivo, você terá considerações adicionais, incluindo conexão com um banco de dados, configuração de um nome de domínio e adição de camadas de segurança. Existem diversos tutoriais sobre Django que podem ajudar você conforme você constrói sob a tag Django.
Pré-requisitos
Para completar este tutorial, você precisará de:
-
Uma conta de usuário não root com privilégios de
sudo
, que você pode obter seguindo e completando o tutorial configuração inicial do servidor para Ubuntu 22.04. -
Configuração do Python 3 com um ambiente de programação virtual. Você pode configurar isso através do guia de instalação do Python 3.
Passo 1 — Instalando o Django
Há várias maneiras de instalar o Django, o gerenciador de pacotes Python pip dentro de um ambiente virtual.
Enquanto estiver no diretório raiz do servidor, você criará o diretório que conterá sua aplicação Django. Execute o seguinte comando para criar um diretório chamado django-apps
, ou outro nome de sua escolha. Em seguida, navegue até o diretório.
Estando dentro do diretório django-apps
, crie seu ambiente virtual. Você o chamará de env
, mas você deve usar um nome que faça sentido para você e seu projeto.
Agora, ative o ambiente virtual com o seguinte comando:
Você saberá que está ativado quando o prefixo for alterado para (env)
, que ficará semelhante ao seguinte, dependendo do diretório em que você está:
Dentro do ambiente, instale o pacote Django usando o pip. A instalação do Django nos permite criar e executar aplicações Django.
Depois de instalado, verifique sua instalação do Django executando uma verificação de versão:
Isso, ou algo semelhante, será a saída resultante:
Output4.0.6
Com o Django instalado em seu servidor, você pode prosseguir para a criação de um projeto de teste para garantir que tudo esteja funcionando corretamente. Você estará criando uma aplicação web esqueleto.
Passo 2 — Ajustando as Configurações do Firewall
Se você seguiu o tutorial inicial de configuração do servidor ou tem um firewall em execução em seu servidor, precisará abrir a porta que estará usando no firewall do seu servidor. Para o firewall UFW, você pode abrir a porta com o seguinte comando:
Se estiver usando Firewalls da DigitalOcean, você pode selecionar HTTP nas regras de entrada. Você pode ler mais sobre Firewalls da DigitalOcean e como criar regras para eles modificando as regras de entrada.
Passo 3 — Iniciando o Projeto
Agora você pode gerar uma aplicação usando django-admin
, uma utilidade de linha de comando para tarefas administrativas em Python. Em seguida, você pode usar o comando startproject
para criar a estrutura de diretórios do projeto para o seu site de teste.
Enquanto estiver no diretório django-apps
, execute o seguinte comando:
Nota: Executar o comando django-admin startproject <projectname>
irá nomear tanto o diretório do projeto quanto o pacote do projeto como <projectname>
e criar o projeto no diretório em que o comando foi executado. Se o parâmetro opcional <destination>
for fornecido, o Django usará o diretório de destino fornecido como o diretório do projeto e criará o manage.py
e o pacote do projeto dentro dele.
Agora você pode verificar quais arquivos de projeto foram criados. Navegue até o diretório testsite
e liste o conteúdo desse diretório para ver quais arquivos foram criados:
Outputmanage.py testsite
Você notará a saída que mostra que este diretório contém um arquivo chamado manage.py
e uma pasta chamada testsite
. O arquivo manage.py
é semelhante ao django-admin
e coloca o pacote do projeto em sys.path
. Isso também define a variável de ambiente DJANGO_SETTINGS_MODULE
para apontar para o arquivo settings.py
do seu projeto.
Você pode visualizar o script manage.py
no seu terminal executando o comando less
assim:
Quando terminar de ler o script, pressione q
para sair da visualização do arquivo.
Agora navegue até o diretório testsite
para visualizar os outros arquivos que foram criados:
Em seguida, execute o seguinte comando para listar o conteúdo do diretório:
Você verá quatro arquivos:
Output__init__.py asgi.py settings.py urls.py wsgi.py
Você pode verificar o que cada um desses arquivos é:
__init__.py
age como o ponto de entrada para o seu projeto Python.asgi.py
contém a configuração para a implantação opcional na Interface de Gateway de Servidor Assíncrona ou ASGI, que fornece um padrão para aplicativos que são síncronos ou assíncronos e é considerado um sucessor do WSGI (consulte abaixo).settings.py
descreve a configuração da sua instalação do Django e permite que o Django saiba quais configurações estão disponíveis.urls.py
contém uma listaurlpatterns
, que roteia e mapeia URLs para suasviews
.wsgi.py
contém a configuração para a Interface de Gateway do Servidor Web ou WSGI, que fornece um padrão para aplicativos Python síncronos.
Observação: Embora arquivos padrão sejam gerados, você ainda tem a capacidade de ajustar os arquivos asgi.py
ou wsgi.py
a qualquer momento para atender às suas necessidades de implantação.
Passo 4 — Configurando o Django
Agora você pode iniciar o servidor e visualizar o site em um host e porta designados executando o comando runserver
.
Você precisará adicionar o endereço IP do seu servidor à lista de ALLOWED_HOSTS
no arquivo settings.py
localizado em ~/test_django_app/testsite/testsite/
.
Conforme declarado na documentação do Django, a variável ALLOWED_HOSTS
contém “uma lista de strings representando os nomes de host/domínio que este site Django pode atender. Esta é uma medida de segurança para prevenir ataques de cabeçalho de host HTTP, que são possíveis mesmo em muitas configurações de servidor web aparentemente seguras”.
Você pode usar seu editor de texto favorito para adicionar seu endereço IP. Por exemplo, se estiver usando o nano
, execute o seguinte comando:
Depois de executar o comando, você vai querer navegar até a Seção ALLOWED_HOSTS
do documento e adicionar o endereço IP do seu servidor dentro dos colchetes simples ou duplos.
Você pode salvar a alteração e sair do nano pressionando as teclas CTRL
+ x
e, em seguida, pressionando a tecla y
. Em seguida, você prosseguirá para acessar seu aplicativo da web via um navegador.
Por fim, crie um usuário administrativo para que você possa usar a interface administrativa do Django. Isso pode ser feito com o comando createsuperuser
:
Você será solicitado a fornecer um nome de usuário, um endereço de e-mail e uma senha para seu usuário.
Passo 5 — Acessando o Aplicativo da Web Django
Com sua configuração concluída, certifique-se de navegar de volta para o diretório onde o manage.py
está localizado:
Agora, execute o seguinte comando substituindo o texto seu-endereco-ip pelo IP do seu servidor:
Finalmente, você pode navegar para o link abaixo para ver como fica o seu site esquelético, substituindo o texto destacado pelo IP real do seu servidor:
http://your-server-ip:8000/
Assim que a página carregar, você verá o seguinte:
Isso confirma que o Django foi instalado corretamente e que o seu projeto de teste está funcionando corretamente.
Para acessar a interface de administração, adicione /admin/
ao final da sua URL:
http://your_server_ip:8000/admin/
Isso o levará a uma tela de login:
Se você inserir o nome de usuário e a senha de administrador que acabou de criar, terá acesso à seção principal de administração do site:
Para obter mais informações sobre como trabalhar com a interface de administração do Django, consulte “Como Habilitar e Conectar a Interface de Administração do Django.”
Quando terminar de testar o seu aplicativo, pode pressionar CTRL
+ C
para interromper o comando runserver
. Isso o devolverá ao seu ambiente de programação.
Quando estiver pronto para sair do seu ambiente Python, pode executar o comando deactivate
:
Desativar o seu ambiente de programação o devolverá ao prompt de comando do terminal.
Conclusão
Neste tutorial, você instalou com sucesso o Django e configurou um ambiente de desenvolvimento para começar a trabalhar no seu aplicativo Django.
Agora você tem a base necessária para começar a construir aplicações web com Django.