javascript - 是否可以使用我现有的 HTML/CSS/JS 迁移到 Django?
问题描述
我正在为一个类开发一个全栈 Web 应用程序,最初打算使用 AWS S3 进行托管,使用 Dynamo 作为数据库,使用 Lambda 将数据传入和传出 Dynamo,以及使用网关 API 连接前端和后端,但除了 AWS 的问题外什么都没有。由于这只是一个课堂项目,不需要远程托管,一位同学建议 Django 让我们完全放弃 AWS。在浏览了很多 Django 的介绍性内容之后,看起来它可能是我们需要的灵丹妙药。但是,我们已经在前端 HTML/CSS/Javascript 以及一些 Bootstrap 中投入了数十个小时。我对 Django 处理我们的数据库并让我们能够在本地主机上运行所有内容的唯一保留是它似乎在 Python 中做所有事情,而我没有 t 立即看到集成我们现有前端的任何方法。我们的前端 JS 旨在从数据库接收数据并在将其提供给 HTML 页面之前对其进行基本计算,我也不确定这将如何与 Django 和 SQLite 集成。
解决方案
- HTML:其中大部分将被重用,但如果您计划在服务器端生成它,您将做一些将其拆分为模板和块的工作,这对于 Django 来说是正常的。
- CSS:如果您小心使用 HTML 模板,可以不加改动地重复使用。
- Javascript:这在很大程度上取决于您构建应用程序的方式。很可能在与服务器端交互的地方(如调用 API)需要返工,但在只与客户端交互的地方(如表单验证等),大部分都将按原样工作。
请注意,您所描述的架构与典型的 Django 架构有很大不同;做你的研究并首先编写一个玩具项目。有很多不错的介绍。
您将不得不重新架构和重写所有后端代码。如果您继续使用 AWS,似乎有 Dynamo 支持,但围绕 lambdas 的所有内容都可能会消失,您将部署到普通的 AWS EC2 实例,或者如果您愿意,可以部署到任何其他托管服务提供商。
记住:做最简单的事情可能会奏效。如果有疑问,YAGNI。
推荐阅读
- arrays - 可以用 =isoweeknum & =arrayformula 的公式自动填充列
- macos - Xamarin.Mac 部署问题
- python - 使用python将参数传递给mysql
- python - 使用 Selenium Python 未选择下拉选项
- python - 熊猫通过“加入”另一个df来填充?
- quarkus - Quarkus:是否可以在 application.properties 上添加 kubernetes 属性以使用 TLS 生成 Ingress?
- javascript - 使用 $.fn.DataTable.tables() 时销毁特定表
- gradle - Gradle 在运行时执行带有空格和管道输出的命令
- visual-studio-code - Truffle : build/contracts/HelloWorld.json 中的源代码在第一次迁移后不会改变
- rust-cargo - 包含可选依赖的依赖