我正在开发一个 Web 应用程序,它允许用户编辑页面上的元素(就像您可以使用 Adobe InDesign 一样)。可以拖动、选择对象,并为用户提供一个侧边栏,其中包含可以修改的对象的所有属性。
数据存储在数据库中的服务器上。我正在使用Django和sweetpie来为数据库中的数据提供一个简单的 REST 接口。
基本上数据的结构如下:
- 文档
- 页
- 页面对象
- 页
我已经使用 jQuery 和 jQueryUI 进行了一些测试,它们提供了允许对象选择、拖放等所需的大部分代码。一切都很好。
现在我正在考虑最好的方法是存储/管理/提取/更新页面上所有这些对象的信息。我可以手动完成这一切,jQuery.ajax()
在数组、字典中使用和存储信息,并将它们链接到 DOM 元素。但是,我觉得有相当多的重新发明轮子和涉及的样板代码是可以避免的。
所以我在网上搜索并发现了 Backbone.js。它让我想起了 Django 的 ORM,并且似乎使管理所有数据变得更简单。据我了解 Backbone.js 的想法,它允许我创建一个类似于在服务器上的模型中定义的对象类,并使用它来存储有关对象的所有信息。
是否适合使用 Backbone.js 来完成这项任务?我查看了它的文档,还看到它支持使用 REST/Ajax 进行同步。