Я думаю, что люди склонны рассматривать Django либо для создания монолитных приложений старой школы, промышленного уровня, либо для API и использования чего-то вроде React для внешнего интерфейса. Я здесь, чтобы сказать вам, что старый добрый Django — отличный вариант даже для ваших личных веб-сайтов! На мой взгляд, если вам нужна база данных, вам следует использовать Django1.
Django считается фреймворком с «батарейками», и эти батареи просто потрясающие. Это то, что заставляет меня использовать Django вместо любого другого фреймворка.
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 в следующий раз, когда вам понадобится что-то создать. Дайте мне знать, если я могу помочь!
Если вам нужна CMS, вам следует использовать Kirby. Вам конечно не следует использовать генератор статических сайтов, если вам нужна CMS. ФФС ↩
Laravel ↩
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3