«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Джанго предназначен для всех.

Джанго предназначен для всех.

Опубликовано 5 сентября 2024 г.
Просматривать:746

Django is for everyone.

Django отлично подходит даже для «маленьких» веб-сайтов.

Я думаю, что люди склонны рассматривать Django либо для создания монолитных приложений старой школы, промышленного уровня, либо для API и использования чего-то вроде React для внешнего интерфейса. Я здесь, чтобы сказать вам, что старый добрый Django — отличный вариант даже для ваших личных веб-сайтов! На мой взгляд, если вам нужна база данных, вам следует использовать Django1.

Почему Джанго?

Django считается фреймворком с «батарейками», и эти батареи просто потрясающие. Это то, что заставляет меня использовать Django вместо любого другого фреймворка.

Объектно-реляционный картограф (ORM)

Django ORM — веская причина использовать этот фреймворк. Я ошеломлен тем, что не все веб-фреймворки включают ORM. Если вы не большой поклонник написания SQL с нуля, это правильный способ создания приложений. Вы определяете модели, создаете миграции баз данных на основе этих моделей (в основном автоматически), запускаете миграции в своей базе данных, и все готово! Никакого написания недоделанных моделей плюс серия миграций, где можно как бы экстраполировать схему2. Вся необходимая информация о ваших данных находится в файле models.py, и все вытекает из него.

Администратор

Это самое важное. Это не CMS; это скорее графический интерфейс для ORM. После того, как вы определите свои модели, вы сможете с помощью очень небольшой конфигурации управлять этими данными без необходимости писать какой-либо CRUD-код. Это не интерфейс вашего приложения. Это не CMS для конечных пользователей (вероятно). Это способ администраторам легко вносить изменения в сайт.

Прогрессивное улучшение

Это очень близко и дорого моему сердцу, но большинство представителей нашей индустрии, похоже, забыли об этом. Проще говоря; Функциональность базового уровня должна быть возможна даже в случае сбоя JavaScript. Ваше приложение должно, по крайней мере, работать без сценариев внешнего интерфейса. Делать это со СПА — кошмар. Сделать это с помощью реальной серверной среды и такого инструмента, как htmx или Unpoly, тривиально. Вам просто нужно изменить свою точку зрения с статус-кво на здравый смысл.

Концепции, которые следует иметь в виду

МТВ

В то время как традиционные платформы приложений используют шаблон проектирования Модель, Представление, Контроллер; Джанго называет свои элементы немного по-другому.

  • Модель
    • Хорошо, это то же самое.
  • Шаблон
    • Это эквивалентно традиционному Просмотр.
  • Вид
    • По большей части это эквивалентно традиционному Контроллеру.

Миграция базы данных

Это решенная проблема в Django. Это действительно приятно! Об этом нужно знать гораздо больше, и вам следует просмотреть сгенерированные файлы миграции перед их запуском, и бывают случаи, когда вам придется делать это вручную, но вот в чем суть его использования:

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

./manage.py migrate
# Database updated!

Вот и все! ?

С чего начать

Блейз.лошадь

Здесь я рассказываю о своем маленьком проекте. Хорошая новость для вас, индивидуального разработчика, который, как я полагаю, читает это, заключается в том, что он бесплатен для некоммерческого использования. Если вы в конечном итоге воспользуетесь им и оно поможет вам создать коммерческое приложение, это будет стоить всего 100 долларов США один раз. Да ладно, это очень ценно!

Даже если вы не будете использовать весь набор, я настоятельно рекомендую вам просмотреть методы, которые я использую в коде. Это трудная задача после использования Django почти с самого начала. Я прошел этап использования его с Docker и Postgres, но я действительно верю, что это способ для 99% людей, которые хотят попробовать Django. SQLite потрясающий.

Развертывание

К сожалению, это основной недостаток выбора Django по сравнению с другими вариантами, ориентированными на личные веб-сайты. С Blaze.horse я пытался облегчить вам задачу, но это все равно сложнее, чем должно быть. Есть несколько многообещающих проектов, которые вселяют во меня надежду, например Button и Appliku, но лично я пока доволен Fly.

Следующие шаги

Я надеюсь, что после прочтения вы вспомните о Django в следующий раз, когда вам понадобится что-то создать. Дайте мне знать, если я могу помочь!


  1. Если вам нужна CMS, вам следует использовать Kirby. Вам конечно не следует использовать генератор статических сайтов, если вам нужна CMS. ФФС ↩

  2. Laravel ↩

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/battlecat/django-is-for-everyone-3dkp?1. Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3