Получение модели Backbone.js из LocalStorage - PullRequest
0 голосов
/ 13 марта 2012

Я могу упустить что-то простое здесь, но я не могу найти ответ, который ищу.

Я пишу интерфейс для корзины в CoffeeScript с использованием Backbone и в то время как серверREST api завершается. Я пытаюсь использовать адаптер localStorage.

По сути, в своей записи приложения я хочу получить корзину, если она существует, в противном случае создать новую.

Я знаюЯ могу получить JSON из localStorage, но как я могу получить его как модель корзины при загрузке страницы?

Я в основном хочу что-то вроде этого (с cart.get (1), что мне нужно)

# entry point
$ ->
  cart = cart.get(1) || new Cart800.Cart id: 1
  new Cart800.CheckoutView model: cart

# model
class Cart800.Cart extends Backbone.Model
  localStorage: new Store 'Cart'

  defaults: ->
    State: new Cart800.State
    Instances: new Cart800.Instances [ new Cart800.Instance ]

Я предполагаю, что мне не нужна коллекция тележек, потому что всегда будет только одна тележка, но, насколько я знаю, коллекция - это единственный способ получить модель по идентификатору.

Спасибо за любые указатели

1 Ответ

1 голос
/ 13 марта 2012

Если у вас есть JSON для модели, единственное, что вам нужно сделать, - создать экземпляр модели Backbone и передать JSON. JSON будет преобразован в реальную модель, представляющую данные:

cart = new Cart800.Cart(cart.get(1) || id: 1)
new Cart800.CheckoutView model: cart
...