1

有没有办法向客户端添加记录并向modelEmber 指示这些记录已经在服务器端?

因此,例如,如果我的Person模型有“Peter”和“Paul”的记录,但后来服务器添加了“Mary”,我的客户就会以非 ember-data 的方式意识到这一点。我希望能够让客户以一种不会导致后续交互出现状态问题的方式添加“Mary”。

对于那些必须知道“用例”的人......我正在尝试:

  • 对给定的 findAll() 有第一个请求,以model从服务器拉回完整的数据集
  • 让会话中的后续请求调用自定义 AJAX 请求,该请求仅返回自上次请求以来结果集的差异
  • 我希望能够将这些差异推入客户端模型,而不会搞砸它的“状态”
4

1 回答 1

0

有时我们使用来自 websocket 的数据在客户端创建和更新 EmberData 记录。在这种情况下,更改已经在服务器上,所以我们只想在客户端上进行更改而不更改状态等,正如您所描述的那样。

当我们在客户端创建新记录时,我们push将它们放入存储中,例如:

this.store.push('post', { id: 1, body: 'Ember!' });

而且,当我们更新客户端上的现有记录时,我们update会将它们放在商店中,例如:

this.store.update('post', { id: 1, hidden: true });
于 2013-10-02T19:27:19.310 回答