"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Django é para todos.

Django é para todos.

Publicado em 2024-09-05
Navegar:294

Django is for everyone.

Django é ótimo mesmo para sites “pequenos”

Acho que as pessoas tendem a considerar o Django para construir aplicativos monolíticos tradicionais e de força industrial ou para APIs e usar algo como React para o front-end. Estou aqui para lhe dizer que o velho Django é uma ótima opção até mesmo para seus sites pessoais! Na minha opinião, se você precisa de um banco de dados, você deve usar Django1.

Por que Django?

Django é considerado uma estrutura “incluída com baterias”, e essas baterias são incríveis. Estas são as coisas que me fazem usar o Django em qualquer outro framework.

O Mapeador Objeto-Relacional (ORM)

O Django ORM é um grande motivo para usar o framework. Estou surpreso que nem todos os frameworks web incluam um ORM. A menos que você seja um grande fã de escrever SQL do zero, esta é a maneira certa de criar aplicativos. Você define modelos, cria migrações de banco de dados a partir desses modelos (principalmente automaticamente), executa as migrações em seu banco de dados e pronto! Nada de escrever modelos meia-boca, além de uma série de migrações onde você pode extrapolar o esquema2. Todas as informações que você precisa sobre seus dados estão em seu arquivo models.py e tudo flui a partir dele.

O administrador

Este é o grande problema. Não é um CMS; é mais uma GUI para o ORM. Depois de definir seus modelos, você pode, com muito pouca configuração, gerenciar esses dados sem precisar escrever nenhum código CRUD. Não é o front-end do seu aplicativo. Não é um CMS para usuários finais (provavelmente). É uma forma de os administradores fazerem alterações no site com facilidade.

Aprimoramento Progressivo

Isso é muito caro ao meu coração, mas a maior parte do resto da nossa indústria parece ter esquecido. Simplificando; a funcionalidade de nível básico deve ser possível mesmo quando o JavaScript falha. Seu aplicativo deve ser capaz de pelo menos funcionar sem scripts de front-end. Fazer isso com um SPA é um pesadelo. Fazer isso com uma estrutura de backend real mais uma ferramenta como htmx ou Unpoly é trivial. Você apenas precisa mudar sua perspectiva do status quo para o bom senso.

Conceitos para manter em mente

MTV

Embora as estruturas de aplicativos tradicionais usem o padrão de design Model, View, Controller; Django nomeia seus elementos de maneira um pouco diferente.

  • Modelo
    • Ok, este é o mesmo.
  • Modelo
    • Isso é equivalente à Visualização.
    • tradicional.
  • Visualizar
    • Isso é basicamente equivalente ao Controlador.
    • tradicional.

Migrações de banco de dados

Este é um problema resolvido no Django. É muito bom! Há muito mais para saber sobre isso, e você deve olhar os arquivos de migração gerados antes de executá-los, e há momentos em que você precisará fazer essas coisas mais manualmente, mas este é o ponto crucial de usá-lo:

./manage.py makemigrations
# It tells you what it did.

./manage.py migrate
# Database updated!

É isso! ?

Como começar

Blaze.cavalo

Aqui é onde eu irei para meu pequeno projeto. A boa notícia para você, desenvolvedor solo que imagino estar lendo isso, é que ele é gratuito para uso não comercial. Se você acabar usando-o e ele o ajudou a construir um aplicativo comercial, custará apenas US$ 100 uma vez. Vamos lá, isso é um grande valor!

Mesmo que você não use o kit completo, recomendo que você dê uma olhada nas técnicas que utilizo no código. Isso é algo conquistado com dificuldade depois de usar o Django quase desde o início. Passei por uma fase de uso com Docker e Postgres, mas realmente acredito que esse é o caminho para 99% das pessoas que querem experimentar o Django. SQLite é incrível.

Implantação

Infelizmente, esta é a principal desvantagem de escolher o Django em vez de outras opções direcionadas a sites pessoais. Com Blaze.horse, tentei preparar você para um momento fácil, mas ainda é mais complicado do que deveria ser. Existem alguns projetos futuros que me dão esperança, como Button e Appliku, mas estou pessoalmente feliz com Fly por enquanto.

Próximas etapas

Depois de ler isso, espero que você mantenha o Django em mente na próxima vez que precisar construir algo. Me diga se posso ajudar!


  1. Se você precisar de um CMS, você deve usar Kirby. Você certamente não deveria usar um gerador de site estático se precisar de um CMS. FFS ↩

  2. Laravel ↩

Declaração de lançamento Este artigo está reproduzido em: https://dev.to/battlecat/django-is-for-everyone-3dkp?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3