我正在创建一个Grocery列表应用程序,这与todo列表非常相似。我有几年的Rails开发经验,但我很难从所有的例子中找出要放入集合的内容,以及制作模型的内容。
我用Sinatra和Redis作为后端嘲笑了应用程序。我的目标是让Sinatra成为简单的API并让骨干管理所有视图。
现在,Grocery列表只是一个复杂的ID,它有一组字符串项。如下所示:
/lists/asdfasdf34asdf => ["eggs", "bacon", "milk"]
转移到骨干网,我会将模型设为“项目”,然后集合将是“列表”,还是其他东西?
我想我的路线不是经典的休息,所以也许这就是为什么我无法整理出去做什么。
答案 0 :(得分:2)
如果只有一个购物清单,Collection
项Model
可能是合适的。 Backbone对于事物的组织方式并不过于规范,但您肯定希望以逻辑方式设置每个模型/集合的url
属性。你可能会这样做:
var app = {
item: Backbone.Model.extend({
// define an item model to go in the itemCollection
}),
itemCollection: Backbone.Collection.extend({
initialize: function (key) {
this.key = key;
},
model: app.item,
url: function () {
return 'lists/' + this.key + '/items/'
}
})
}
然后沿着这些行实例化应用程序的每个版本:
var userListKey = 'foobar',
userCollection = new app.itemCollection(foobar);
// proceed with app. Requests for userCollection will now be
// directed to /lists/foobar/items
还有很多其他方法可以做到这一点,但希望这是一个开始。