2

私はしばらく AngularJS と JSON を使用してきました。現在、次の配列を使用して todo を保存する単純な todo アプリを作成しています。

$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

これまでのところ、まあまあです。今私が確信していないのは、このデータを実際に永続的に保存する方法です。アプリケーションを使用して todo を追加または変更する場合、ブラウザ ウィンドウを閉じてすべてがデフォルト値に戻るまでは (当然のことながら) すべて問題ありません。

これまで、私は常に MySQL データベースを使用してリレーショナル データを格納してきました。しかし、このjsonデータを保存するためのより良い方法があるかどうか疑問に思っていましたか?

配列全体をテキストファイルに保存する単純なphpページを作成することを考えていました。しかし、それは、データにわずかな変更を加えるたびに、ファイル全体を書き直すことを意味します。

この種のデータを保存できるデータベースが利用できると聞きましたが、どこから始めればよいかわかりません。どんなポインタでも大歓迎です。

4

2 に答える 2

2

これを MySQL のようなリレーション データベースに保存することを妨げるものは何もありません。Todo、Category、Item などのエンティティを持ち、JSON にシリアル化し、RESTful に提供することができます。

あなたが探していたのは NoSQL データベースだと思います。JSON データをネイティブに保存でき、従来のリレーショナル データベースのようなデータの行だけではなく、データのチャンクを保存できます。

2 つの一般的な NoSQL データベースは、

于 2013-07-07T11:56:43.943 に答える
2

restangularのようなフレームワークを使用してリレーションを定義することをお勧めします。これにより、couchdb や mongodb などの RESTfull JSON API を持つあらゆる種類の noSQL データベースを使用できるようになります。必要なすべての HTTP メソッドもサポートしていますが、それよりも多くの機能があります。リポジトリのreadmeを参照してください。

mongolabs、mongodb の欠陥のあるクラウド サービスを使用するデモもここにあります。

それが役に立てば幸い。

于 2013-07-07T11:54:10.420 に答える