2012-12-04 43 views
1

我正在研究一个Web应用程序,它允许用户编辑页面上的元素(就像您可以使用Adobe InDesign一样)。可以拖动,选择对象,并为用户提供一个侧栏,其中包含可以修改的对象的所有属性。用于浏览器内页面布局编辑器的Backbone.js?

数据存储在服务器上的数据库中。我正在使用Djangotastypie为数据库中的数据提供简单的REST接口。

基本上如下数据结构:

  • 文件
      • 页面对象

我已经做了一些测试,以jQuer y和jQueryUI,它们提供了大部分允许对象选择,拖拽等等所需的代码。

现在我正在考虑什么最好的方法是存储/管理/拉/更新有关页面上所有这些对象的信息。我可以全部手工完成,并使用jQuery.ajax()并将信息存储在数组,字典中并将它们链接到DOM元素。不过,我觉得有很多重新发明的轮子和样板代码可以避免。

所以我搜索了网页,发现Backbone.js。它让我想起了Django的一些ORM,看起来更容易管理所有的数据。据我了解Backbone.js的想法,它允许我创建一个类似于服务器上模型中定义的对象类,并使用它来存储关于对象的所有信息。

在这项任务中使用Backbone.js是否合适?我查看了它的文档,也看到它支持使用REST/Ajax进行同步。因为它不用于在没有连接到所述DOM,即通过Backbone.ModelBackbone.Collection的方式管理数据提供的抽象

+0

好极了,你打算开源吗?我正在草拟阶段的类似项目。我使用knockout.js进行UI和html5sortable进行DND(我发现它有点难以在嵌套小部件之间拖拽)和自定义的JSON格式。我不确定backbone.js是否有助于我们看到。 – okm

+0

@okm:不,这是一个商业项目,所以我不能开源。 – BastiBen

+0

我明白了..继续努力吧,祝你好运=) – okm

回答

相关问题