【问题标题】:persisting json array data持久化 json 数组数据
【发布时间】:2013-07-07 11:47:06
【问题描述】:

我使用 AngularJS 和 JSON 已经有一段时间了,我目前正在编写一个简单的 todo 应用程序,它使用以下数组来存储它的 todos:

$scope.todos = [    

    // todo 1
    {
        title:  'Personal',
        status: 'todo',
        // categories for todo 1
        categories: [
            {
                title:  'Shopping', 
                status: 'doing',
                // items for category 1, todo 1
                items: [
                    {
                        title:  'Buy bacon',
                        status: 'complete',
                    },
                    {
                        title:  'Buy tuna',
                        status: 'doing',
                    },
                ], // / items
            },
        ], // /categories
    },
]; // todos

到目前为止,一切顺利。现在我不确定如何实际永久存储这些数据。如果我使用我的应用程序添加或修改待办事项,一切都很好,直到我关闭浏览器窗口并且一切都恢复到默认值(显然)。

直到现在,我一直在使用 MySQL 数据库来存储关系数据。但是我想知道是否有更好的方法来存储这个 json 数据?

我正在考虑创建一个简单的 php 页面,并将整个数组保存到一个文本文件中。但这意味着每次我对数据进行最微小的更改时都要重写整个文件。

我听说有可用的数据库允许您存储此类数据,但我不知道从哪里开始?任何指针将不胜感激。

【问题讨论】:

    标签: json angularjs


    【解决方案1】:

    没有什么能阻止您将其保存在像 MySQL 这样的关系数据库中,您可以拥有像 Todo、Category 和 Item 这样的实体,然后序列化为 JSON 并以 REST 方式提供它们。

    我认为您正在寻找的是 NoSQL 数据库。它们可以原生存储 JSON 数据,并且可以存储数据块,而不是像传统关系数据库那样仅存储数据行。

    两个流行的 NoSQL 数据库是

    【讨论】:

      【解决方案2】:

      我建议使用restangular 之类的框架来定义您的关系,然后您将能够使用具有 RESTfull JSON API 的各种 noSQL 数据库,例如 couchdb 或 mongodb 等。 它使用了具有良好未来证明和现代性的 Promise,它还支持您可能需要的所有 HTTP 方法,但它具有更多功能,请查看 repo 的 readme

      这里还有一个demo,它使用mongolabs,mongodb有缺陷的云服务。

      希望对你有帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-12-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多