当模型包含数组时,是否有必要使用DS.hasMany指向DS.Model?即使数组元素不是真正的模型(没有自己的ID或端点)?有没有更好的办法?
我正在使用DS.hasMany,但我的扩展DS.RESTAdapter是给我一个404试图访问该模型,即使我从来没有打电话find给它,并被hasMany称为{ embedded: true }.我第一次看到这个错误(显然与这个模型有关,因为没有它就会消失):
Uncaught Error: assertion failed: Emptying a view in the inBuffer state is not allowed and should not happen under normal circumstances. Most likely there is a bug in your application. This may be due to excessive property change notifications. ember-latest.js:43
Run Code Online (Sandbox Code Playgroud)
这意味着什么以及可能导致什么呢?
这是堆栈跟踪:
Ember.assert ember-latest.js:43
Ember.View.states.inBuffer.empty ember-latest.js:13644
Ember.View.Ember.Object.extend.invokeForState ember-latest.js:12257
Ember.CollectionView.Ember.ContainerView.extend.arrayWillChange ember-latest.js:14477
invokeAction ember-latest.js:3193
iterateSet ember-latest.js:3175
sendEvent ember-latest.js:3323
Ember.Array.Ember.Mixin.create.arrayContentWillChange ember-latest.js:6963
Ember.ArrayProxy.Ember.Object.extend.arrangedContentArrayWillChange ember-latest.js:9281
Ember.ArrayProxy.Ember.Object.extend._arrangedContentWillChange …Run Code Online (Sandbox Code Playgroud) 在我的应用程序中,我试图保持路由结构尽可能接近API结构,这对于基本情况有用,但我仍然对以下情况感到困惑:
(参考http://emberjs.com/guides/outlets/#toc_nesting的例子)
检索/posts/:post_id/comments数据的最佳方法是什么(假设它没有给我/posts/:post_id)?
我应该以App.Comment.find(...)某种方式将帖子ID传递给comments.deserialize(...)方法吗?有没有比获得帖子ID更好的方法router.getPath('postController.content._id')?我正在使用修改后的DS.RESTAdapter.