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.
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 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.
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.
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.
Embora as estruturas de aplicativos tradicionais usem o padrão de design Model, View, Controller; Django nomeia seus elementos de maneira um pouco diferente.
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! ?
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.
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.
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!
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 ↩
Laravel ↩
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