我认为人们倾向于认为 Django 要么用于构建老式的、工业强度的整体应用程序,要么用于 API 并使用 React 之类的东西作为前端。我在这里告诉您,即使对于您的个人网站,普通的 Django 也是一个不错的选择!在我看来,如果你需要数据库,你应该使用 Django1.
Django 被认为是一个“包含电池”的框架,这些电池非常棒。这些是让我继续使用 Django 而不是其他框架的原因。
Django ORM 是使用该框架的一个重要原因。令我惊讶的是,并非所有 Web 框架都包含 ORM。除非您非常喜欢从头开始编写 SQL,否则这是构建应用程序的正确方法。您定义模型,从这些模型创建数据库迁移(大部分自动),在数据库上运行迁移,然后就可以开始了!无需编写半途而废的模型以及一系列可以推断模式的迁移2。 所有您需要的有关数据的信息都在您的 models.py 文件中,一切都从中产生。
这是一件大事。它不是 CMS;而是 CMS。它更像是 ORM 的 GUI。定义模型后,您可以通过非常少的配置来管理该数据,而无需编写任何 CRUD 代码。它不是您应用程序的前端。它不是面向最终用户的 CMS(可能)。这是管理员轻松更改网站的一种方式。
这对我来说非常重要,但我们行业的大多数其他人似乎已经忘记了。简单地说;即使 JavaScript 失败,基本级别的功能也应该是可能的。您的应用程序至少应该能够在没有前端脚本的情况下运行。使用 SPA 来做到这一点是一场噩梦。使用真正的后端框架加上 htmx 或 Unpoly 等工具来完成此操作是微不足道的。你只需要把你的观点从现状转向常识。
虽然传统的应用程序框架使用模型、视图、控制器设计模式; Django 对元素的命名略有不同。
这是 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,您当然不应该使用静态站点生成器。 FFS ↩
Laravel ↩
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3