我正在尝试将骨干链接到firebase
在伪造中,我有以下结构:
-myfirebasename
-user
-first_name
-last_name
此代码:
var Items = Backbone.Firebase.Collection.extend({
url: user,
firebase: "https://myfirebasename.firebaseio.com"
});
给了我一个未被捕获的引用错误,用户未定义。显然这是错误的(作为一个网址参数),但我给了它一个机会,因为下面的其他两个没有穿... .. / / p>
如果我用/user
替换网址,我会Fetch called on a Firebase collection, ignoring.
如果我使用model:user,我会得到fetch called on ...ignoring
和Uncaught TypeError: Cannot read property 'idAttribute' of undefined
答案 0 :(得分:0)
Melbourne2991,您确实需要使用之前尝试过的model属性:
var Items = Backbone.Firebase.Collection.extend({
model: User,
firebase: "https://myfirebasename.firebaseio.com"
});
关键点显然是在你调用之前定义User,例如:
var User = Backbone.Firebase.Model.extend({
defaults: function() { //maybe but some default values... },
initialize: function() { //or some initializing code... },
});
Backbone.Firebase。*和Backbone。*在行为上非常相似(非常感谢!),集合需要知道它是什么的集合,以及告诉它首先定义模型类型的方法(扩展一个Backbone。* .Model)然后在模型键中传递它。 firebase的目的只是为了给主干提供一个智能URL以进行提取,并为获取,更新等提供一些特殊规则。