加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 将Ember CLI与Django app集成

发布时间:2020-12-16 22:55:49 所属栏目:Python 来源:网络整理
导读:在Ember CLI之前,我用来在Django项目中创建一个index.html页面,再加上App.js文件,所有这些文件似乎都运行得很好. 现在Ember正在使用CLI,似乎没有简单的方法可以在Django应用程序中集成Ember CLI项目. 所以我读到人们建议使用Ember CLI开发前端,Django开发RES
在Ember CLI之前,我用来在Django项目中创建一个index.html页面,再加上App.js文件,所有这些文件似乎都运行得很好.
现在Ember正在使用CLI,似乎没有简单的方法可以在Django应用程序中集成Ember CLI项目.
所以我读到人们建议使用Ember CLI开发前端,Django开发REST API.但是部署并不容易,因为您需要复制Django静态文件夹下的Ember dist文件夹,并将Ember app下的所有静态资源URL更改为指向Django静态路径.

因此,似乎没有简单的方法将两者集成到一个单一的开发过程中.

你们有没有关于如何整合开发和部署过程的建议?

谢谢.

解决方法

对于这样的项目,您应该为服务器应用程序和客户端应用程序使用单独的存储库.

考虑一个包含4个代码库,1个服务器和3个客户端的项目:

> myproject(用Python编写的Django应用程序,为客户端提供API)
> myproject-web(用JavaScript编写的Ember.js Web客户端)
> myproject-ios(用Swift编写的iOS客户端应用程序)
> myproject-android(用Java编写的Android客户端应用程序)

核心应用程序将部署到能够托管Python应用程序的服务器(例如uWSGI).

因为Ember.js项目最终是一个静态资源,所以您可以从几乎任何地方(例如NGINX)提供它,并将其指向托管Django项目的单独API服务器(例如https://app.myproject.com/api/).请参阅有关配置ember-django-adapter以使用自定义API主机的文档:http://dustinfarris.com/ember-django-adapter/configuring/

iOS当然会部署到Apple App Store,Android项目将部署到Google Play.

每个存储库都是一个单独的代码库,具有不同的需求和部署策略 – 这就是最好将它们分开的原因,因此您可以考虑它们并单独使用它们.仅仅因为Django可以处理静态资产并不意味着你应该依赖它 – 试图在Django项目中托管Ember.js项目(或任何其他JS框架项目)只会让事情过于复杂.希望有所帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读