2

そのため、Web アプリケーションに Backbone を使用していますが、ネストされたモデルの操作方法がわかりません。JSONが次のようになるJavaクラスに基づくモデルがあります。

"AdminSettings":
{
    "defaults": {
        "deletable":true,
        "transferable":false;
        "issueLimit":1
    }
    "displaySettings": {
        "tabs":2,
        "amounts:[10,20]
    }
}

現在、エンドポイントのセットアップと、AdminSettings オブジェクトのバックボーン モデルがあります。AdminSettings 内のオブジェクトのすべてのバックボーンの利点を得る特定の方法があるかどうか疑問に思っていました。たとえば、現在私は使用する必要があります:

adminSettings.get("defaultValues").shareable

しかし、私は使いたい:

adminSettings.get("defaultValues").get("shareable")

これは私が取得しようとしている唯一の利点ではなく、単なる例です。

そうですね、これについてはどうすればよいでしょうか。ネストされたオブジェクトごとにバックボーン モデルを作成し、それらのそれぞれにエンドポイントを設定することを考えていましたが、完全にはわかりません。とにかく、見てくれてありがとう。

4

1 に答える 1

2

独自のカスタムバックボーンパーサーを作成できます。

var DisplaySettingsModel = Backbone.Model.extend({});
var DefaultValuesModel = Backbone.Model.extend({});

var AdminSettingsModel = Backbone.Model.extend({

    model: {
        defaultValues: DefaultValuesModel
        displaySettings:  DisplaySettingsModel
    },

    parse: function(response){
        response["defaultValues"] = new DefaultValuesModel(response["defaultValues"], {parse:true});
        response["displaySettings"] = new DisplaySettingsModel(response["displaySettings"], {parse:true});
        return response;
    }
});
于 2013-03-07T14:17:23.983 に答える