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 回答