2012-04-24 80 views
1

我正在製作一個購物清單應用程序,它與待辦事項列表非常相似。我有幾年的Rails開發經驗,但是無法從所有示例中找出要放入集合的內容以及如何製作模型。主幹模型結構

我用Sinatra和Redis作爲後端嘲笑了應用程序。我的目標是讓Sinatra成爲簡單的API,並擁有骨幹管理所有視圖。

現在,雜貨清單只是一個複雜的ID,它具有一組字符串項目。因此,像:

/lists/asdfasdf34asdf => ["eggs", "bacon", "milk"] 

移動到骨幹,我會使得模型的「項目」,然後收集將是「清單」,否則會是別的東西?

我想我的路線不是經典的休息所以也許這就是爲什麼我有麻煩整理出在哪裏做什麼。

回答

2

如果只有一個購物清單,Collection項目Model s可能是適當的。骨幹對於事情的組織方式沒有過多的規定,但是你一定要以合理的方式設置每個模型/集合的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 

還有很多其他的方法可以做到這一點,但希望這是一個開始。

+0

太棒了。感謝您的反饋! – user577808 2012-04-24 02:01:45

+0

你打賭。祝你好運! – rjz 2012-04-24 02:14:21