我有兩個模型(用戶和任務),它們是Backbone.RelationalModel
的實例。_.bindAll(this)和Uncaught TypeError:無法讀取骨幹關係.js中未定義的屬性'idAttribute'
有關這兩種模式的關係如下:
// Task model
var Task = Backbone.RelationalModel.extend({
relations: [
{
type: 'HasOne',
key: 'user',
relatedModel: User
}
],
urlRoot: 'someUrl'
});
然後,我有一個集合,其代碼如下所示:
var FollowerCollection = Backbone.Collection.extend({
initialize: function() {
_.bindAll(this);
}
model: User
});
var User = Backbone.RelationalModel.extend({
});
當我做一個獲取上FollowerCollection我得到以下錯誤:
Uncaught TypeError: Cannot read property 'idAttribute' of undefined
上骨架relation.js的backbone-relation version 0.5.0
這裏一塊骨架relation.js的代碼
if (!(model instanceof Backbone.Model)) {
// Try to find 'model' in Backbone.store. If it already exists, set the new properties on it.
var existingModel = Backbone.Relational.store.find(this.model, model[ this.model.prototype.idAttribute ]);
的問題是關係到_.bindAll(this)
線1565,因爲如果我評論它,它工作正常。
爲什麼?有任何想法嗎?
您確定,當您聲明關係時定義'User'模型嗎? –
@mashingan我確實附加了關於任務模型的所有代碼。你能看看嗎?謝謝。 –
您如何爲FollowerCollection和User添加代碼,以便我們甚至可以嘗試查找問題?目前我看不出這兩個班級之間有什麼關係。 – jakee