我的模型看起来像这样:
var Item = Backbone.Model.extend({
urlRoot: '/item/ajax_get'
});
如果我想从数据库中获取特定项目,我可以这样做:item = new Item({id: 11});
但是,如果我不知道id
我想要获取的项目怎么办?相反,我想查询数据库(通过 AJAX)以获取最新item
排序的timestamp
. Backbone.js 有可能吗?
我的模型看起来像这样:
var Item = Backbone.Model.extend({
urlRoot: '/item/ajax_get'
});
如果我想从数据库中获取特定项目,我可以这样做:item = new Item({id: 11});
但是,如果我不知道id
我想要获取的项目怎么办?相反,我想查询数据库(通过 AJAX)以获取最新item
排序的timestamp
. Backbone.js 有可能吗?
Backbone.js 是为 RESTful API 设计的,因此在这些术语中,您要查找的是按时间戳降序排序的集合的第一项。这意味着您正在查看的内容类似于
GET /items/?count=1&sortBy=timestamp&order=descending
这意味着您将在主干.js 中有类似以下代码的内容
var Item = Backbone.Model.extend({
});
var ItemCollection = Backbone.Collection.extend({
model: Item,
url: '/items/'
});
var collection = new ItemCollection();
collection.fetch({
data: {
count: 1,
sortBy: 'timestamp',
order: 'descending'
}
}).then(function () {
var myItem = collection.models[0];
}, function (error) {
console.log(error);
});