前端/后端之间的共享配置和功能(例如AngularJS / Django)

时间:2015-02-12 13:44:11

标签: django angularjs rest frontend backend

问题可能是一般性的,但假设Django用于提供由AngularJS编写的应用程序所使用的RESTful API。

两个应用程序都需要一些配置变量,其中一些在两者之间共享。例如,他们都需要知道当年的假期列表。对于Django,可以将此列表写在settings.py文件中,或者作为Model类中的常量。对于AngularJS,可以编写可以在需要时注入依赖项的ServiceFactory

如何避免这种重复?也就是说,我如何一次编写列表? 而不是在AngularJS Factory中对变量进行硬编码,可以通过Ajax请求加载它们,因为应用程序加载在客户端上,就像创建Factory一样。

第二个选项可以是一个JSON文件,可以在Django中解析并加载到AngularJS中。

哪种习惯方式?

功能怎么样?假设在AngularJS应用程序中我有一个带有功能的购物车,当我调整购物车的内容时,实时计算,总价格基于对象,数量和任何可以想到的复杂关系。我不想发出Ajax请求,要求后端计算总价。

我终于通过我用Django创建的RESTful API将购物车的内容发送到后端。当然我不想在通话中发送总价(用户可以发送任何总价),但我想从后端再次计算它。

是否有任何选项可以编写函数来计算总价格一次?

1 个答案:

答案 0 :(得分:0)

一种解决方案可能是将您的功能存储为javascript,并使用V8引擎来解释javascript服务器端。

此博客文章描述了它:http://sporto.github.io/blog/2013/06/23/sharing-simple-business-logic-between-the-client-and-front-end-with-rails/