Construindo um aplicativo da Web Python com Django

Django é um framework web Python de alto nível que incentiva o desenvolvimento rápido e o design limpo e pragmático. Ele cuida de grande parte do incômodo do desenvolvimento web, permitindo que os desenvolvedores se concentrem em escrever o aplicativo em vez de reinventar a roda. Este artigo o guiará pela construção de um aplicativo web simples usando Django.

Introdução ao Django

Antes de começar a construir um aplicativo web Django, você precisa instalar o Django. Você pode instalar o Django usando pip, o instalador de pacotes do Python:

pip install django

Após a instalação do Django, você pode criar um novo projeto Django executando o seguinte comando no seu terminal ou prompt de comando:

django-admin startproject myproject

Este comando cria um novo diretório chamado myproject com os arquivos necessários para começar. Navegue até este diretório:

cd myproject

Criando um aplicativo Django

Dentro do seu projeto Django, você pode criar aplicativos individuais que lidam com funcionalidades específicas. Por exemplo, você pode ter um aplicativo para autenticação de usuário, outro para postagens de blog, etc. Para criar um aplicativo, execute o seguinte comando:

python manage.py startapp myapp

Isso cria um novo diretório chamado myapp contendo arquivos como models.py, views.py e tests.py, entre outros. Você definirá seus modelos, visualizações e templates dentro deste aplicativo.

Definindo Modelos

Os modelos Django definem a estrutura dos seus dados e são representados como classes Python. Você os define no arquivo models.py dentro do seu aplicativo:

from django.db import models

class BlogPost(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

Depois de definir seus modelos, você precisa criar tabelas de banco de dados para eles. Execute os seguintes comandos para aplicar as migrações:

python manage.py makemigrations
python manage.py migrate

Criando visualizações e modelos

As visualizações do Django manipulam a lógica do seu aplicativo e interagem com modelos para renderizar dados em templates. Uma visualização simples pode ser criada no arquivo views.py:

from django.shortcuts import render
from .models import BlogPost

def home(request):
    posts = BlogPost.objects.all()
    return render(request, 'home.html', {'posts': posts})

O código acima busca todas as postagens do blog do banco de dados e as passa para um modelo chamado home.html. O modelo home.html é armazenado em um diretório chamado templates dentro do seu aplicativo:

<!DOCTYPE html>
<html>
<head>
    <title>Blog Home</title>
</head>
<body>
    <h1>Blog Posts</h1>
    <ul>
    {% for post in posts %}
        <li>{{ post.title }} - {{ post.created_at }}</li>
    {% endfor %}
    </ul>
</body>
</html>

Configurando URLs

Para conectar visualizações a URLs, você precisa definir padrões de URL. Crie um arquivo chamado urls.py no diretório do seu aplicativo e adicione o seguinte código:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]

Em seguida, inclua os padrões de URL deste aplicativo no arquivo principal do projeto urls.py:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myapp.urls')),
]

Executando o servidor de desenvolvimento

Depois de configurar seus modelos, visualizações, templates e URLs, você pode executar o servidor de desenvolvimento Django para ver seu aplicativo web em ação:

python manage.py runserver

Abra um navegador da web e navegue até http://127.0.0.1:8000/ para ver seu aplicativo da web Django em execução.

Conclusão

O Django simplifica a criação de aplicativos web poderosos e robustos com Python. Este guia cobriu os conceitos básicos de configuração de um projeto Django, criação de um aplicativo, definição de modelos, criação de visualizações e templates, configuração de URLs e execução do servidor de desenvolvimento. Com o Django, você pode criar aplicativos web escaláveis ​​e sustentáveis ​​com facilidade.