Ember.js 余烬数据模型生命周期

Ember.js 余烬数据模型生命周期,ember.js,ember-data,Ember.js,Ember Data,余烬本身是可怕的,但它的文档是繁琐和复杂的。我花了两周的时间,还没有完全掌握它。对我来说,最困难的部分是如何将余烬数据集成到余烬中 例如,对于新操作,我在适当的路径中创建组模型的新记录,如下所示: model: -> Twicl.Group.createRecord access: 'public' 然后捕获submit事件并在控制器中执行以下操作: save: (record) -> record.save().then => @tran

余烬本身是可怕的,但它的文档是繁琐和复杂的。我花了两周的时间,还没有完全掌握它。对我来说,最困难的部分是如何将余烬数据集成到余烬中

例如,对于新操作,我在适当的路径中创建组模型的新记录,如下所示:

model: ->
  Twicl.Group.createRecord
    access: 'public'
然后捕获submit事件并在控制器中执行以下操作:

  save: (record) ->
    record.save().then =>
      @transitionTo 'groups'
#instead of 
model: ->
  Twicl.Block.find()
#do
model: ->
  Twicl.Block.find(isNew: false)
若并没有错误并且它正常工作,它应该会到达groups.index路径,但在集合中,我看到的不仅是最近保存的记录,而且(我猜)它的原型在属性中也并没有数据

粗略的解决方案是在索引控制器中过滤模型:

  save: (record) ->
    record.save().then =>
      @transitionTo 'groups'
#instead of 
model: ->
  Twicl.Block.find()
#do
model: ->
  Twicl.Block.find(isNew: false)
是这样吗?还是我错过了什么?为什么我们不能在controller init上获得一个全新的集合


此外,我也希望有任何与实际指南的链接(当然官方指南和API除外),我在谷歌上搜索的所有内容都是无关的,因为旧版本的余烬和余烬数据(

关于进入beta 1/2,过渡文档中有很多好的信息:

而不是

Twicl.Group.createRecord()
Twicl.Block.find({isNew: false}) 
现在你该做了

this.store.createRecord('group')
而不是

Twicl.Group.createRecord()
Twicl.Block.find({isNew: false}) 
你会的

this.store.find('block',{isNew : false})

谢谢!发布后我发现我一直在使用0.14版本的余烬数据,这不是我要做的:),但主要问题是,按照{isNew:false}显式过滤是常见的做法?为什么指南中从未提及?当我询问所有记录时,到底发生了什么:为什么有我新创建的记录和一些空记录。在backbone.js之后,我无法获得它,因为(在我不使用它一年后的记忆中),新创建和保存的记录只是将其状态从新更改为持久化,并保留在集合中。