0

コレクションからモデル名を取得するにはどうすればよいですか? コレクションを定義するとき、モデル属性を次のように指定します。

Domains = Backbone.Collection.extend({
    model : Account
})

この属性値を取得するにはどうすればよいですか?

Domains.modelを試してみました...

4

1 に答える 1

1

まず第一に、初期化に String を使用する場合、Backbone が機能するとは思いません。次のCollection.modelように Model クラス参照を指定する必要があります。

var MyModel = Backbone.Model.extend({});

var MyCollection = Backbone.Collection.extend({
    model: MyModel
});

変数参照自体から変数の名前を取得することはできません。

すべてのモデルに、クラスの名前を尋ねることができる String クラス属性でタグ付けする回避策を考え出すことをお勧めします。

var MyModel = Backbone.Model.extend({
    name: "MyModel"
});

var MyCollection = Backbone.Collection.extend({
    model: MyModel
});

var myCollection = new MyCollection();

console.log( "reference", myCollection.model ); // reference to the class 
console.log( "reference.name", myCollection.model.prototype.name );​ // string name

jsFiddle を確認する

于 2012-09-14T15:39:36.090 に答える