0

我有一个关于emberjs的列表。我想使用来自服务器的数据创建该列表的新元素。数据通过 ajax 以 json 格式传输,如下所示:

{
  "status": "success",
  "material": 
  [
    {
      "user1": "test",
      "create_datetime": "2013-03-30 10:36:24+00:00"
    }
  ]
}

如何填写ember.js我的列表中的模型?

4

1 回答 1

1

这可以通过迭代您返回的材料数据来完成。(咖啡稿)

楷模

App.Material = Ember.Object.extend
  userId: null
  createDateTime: null

App.Item = Ember.Object.extend
  status: null
  materials: []

控制器

App.ItemController = Ember.ObjectController.extend

  init: ->
    @loadData()

  loadData: =>
    $.ajax
      url: "/api/items"
      success: (data) =>
        if data?    
          # create an item object
          item = App.Item.create
                   status: data.status

          # loop through all materials for current item
          for material in data.material
            # push materials onto item.material stack
            item.materials.pushObject App.Material.create
                                        userId: material.user1
                                        createDateTime: material.create_datetime

          # set the controllers content to the item
          @set('content') item
于 2013-04-22T22:56:58.617 回答