使用backbone js与django的好处是什么?

4

我的问题很简单: 目前我使用的堆栈是django+coffeescript。

将django和backbone js耦合在一起是一个好主意吗? 它有什么优点? 能否带我了解一下它的优缺点。

PS:我知道backbone js是一个MVC。

2个回答

6
Backbone.js提供了一种在客户端进行MVC操作的方式。当然,您可以很容易地将coffeescript与backbone混合使用。
如果您的应用程序需要在客户端执行大量操作,采用backbone将让您以更清晰、更结构化和更优雅的方式实现此目标。

一个小补充。Backbone.js正在使用REST与后端进行数据交换,因此使用像piston或tastypie这样的REST django框架有助于快速创建后端。尽管tastypie存在一些生产力问题,但它是一个不错的起点。 - Ilya

3
我们在一个应用程序中广泛使用backbone+django,但是,当您通过REST-api进行通信时,django本身并不真正与backbone混合,因为大部分模板系统和一些视图系统变得多余。幸运的是,您可以通过piston、tastypie或我们最喜欢的django-rest-framework轻松地向django添加API。

问题是代码库翻倍,您需要在不同的框架中定义模型和潜在的表单验证逻辑两次。您可能希望将node.js作为django后端的替代方案,以便能够在http的两侧重用逻辑。也许可以看看andyet.com(确切地说是Henrik Joreteg)的capsule,以便在客户端和服务器上重用backbone逻辑。

一个新生力量似乎是djangbone(https://github.com/af/djangbone),它使使用Django ORM与backbone变得非常容易!


Django Rest Framework是一个相当不错的选择。虽然我不同意必须使用单独的框架这一点。Django可以免除您在服务器上使用JS的麻烦,因为大多数node.js提供的内容基本上都是垃圾质量,所以我认为不需要在后端使用浏览器代码是一种福音,也不是一种理想的选择。但是,这只是我的观点!只是可惜早期用Python替换浏览器中的JS的提议没有得到人们希望的关注。 - Shayne

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接