我读过几篇关于使用新的JS框架的文章,比如Backbone.js或Ember.js
我得出了这样的结论:如果我使用像Backbone.js/Ember.js这样的JS框架,那么我会将逻辑从后端(Django)移到前端。
因此,Django实际上只用于它的模型吗?这是否意味着Django视图和Django模板不再需要,Django后端变成了一个“基本的”REST API,将由前端使用。
你同意吗?那么这就是Django在这种情况下的目的吗?
在前端使用像Backbone.js/Ember.js这样的框架时,将django后端转换为REST API是最合适的用例之一吗?
谢谢。
发布于 2012-08-02 04:09:04
Django以这种方式使用是非常好的,你仍然可以得到管理员,模型,orm和所有的第三方插件。但是,它的速度并不快,所以如果您正在进行简单的文档级、非关系型REST映射,那么您可能不想研究node.js和mongoDB。
如果你坚持使用django (和我们一样,我们喜欢它给我们提供的结构),你可以使用REST插件之一:
如果你只想使用前端开发,可以试试像cloudmine.me或firebase.com这样的后端即服务的地方,它们为你处理所有的后端东西,当然是有偿的。
发布于 2012-08-02 03:01:43
一旦你开始考虑单页面解决方案和javascript应用程序,Django似乎就没有必要了,但如果你想让你的站点“防故障”,那么开发一个客户端Javascript版本的站点和一个后端django端也不是不可能的,以防用户或你站点的Javascript在某种程度上失败。当然,这需要创建两次站点,在现代浏览器时代可能不需要,但这将是为数不多的将两者混合在一起以实现完整解决方案的实例之一。
发布于 2012-08-02 02:29:32
是的,就是这样。您可以使用它来管理对资源的身份验证等,也可以使用应用程序的主视图,但不需要使用服务器端模板,因为这些框架是用来处理json/xml响应的。
这就是为什么很多人都在转向更轻量级的后端/主干或ember组合,而不是像django这样的完整解决方案。您还可以使用django缓存json响应,这会让您的应用程序显示得更快。
https://stackoverflow.com/questions/11763798
复制相似问题