我有以下系列:
AisisWriter.Collections.Posts = Backbone.Collection.extend({
model: AisisWriter.Models.Post,
// Build the url based on blog id.
url: function() {
url = '/api/v1/blogs/' + AisisWriter.blog_id + '/posts/'
return url;
}
});
这允许我这样做:
var options = { reset: true };
this.writer_posts.fetch(options).then(this.postsRecieved, this.serverError);
这将返回我所有帖子,目前六个。
我已经厌倦了:
var options = { reset: true };
this.writer_posts.fetch({id: id}).then(this.postsRecieved, this.serverError);
// id is the id passed into the route, in this case it's #=> {id: 6}
但这仍然会让我回复所有六个帖子,我看到this answer,但我认为我不应该通过,或者在代码中间扩展模型只是为了追加一个ID ,当我使用集合来获取数据时,我和模型用于Post,Put和Delete操作。
那么如何退回一个帖子?
答案 0 :(得分:0)
通常,要从Collection中获取一些模型,您应该获取Collection,然后通过id获取所需的模型,例如:
this.writer_posts.fetch();
收集后,您将获取get method
this.writer_posts.get(id);
或者您可以尝试通过在fetch method中传递必需的ID来获取特定的模型:
this.writer_posts.fetch({
data: {
id: id
}
});
或类似的东西。