0

假设我有一个模型,它的一些属性存储在数据库中,另一个存储在其他地方,但客户端将它作为一个单独的 JSON blob 接收。

App.Tournament = DS.Model.extend({
  name:              DS.attr("string"),
  ...
  is_registered:     DS.attr("boolean")
});

该属性is_registered不是服务器中模型的一部分,我想单独保存它。这是一个例子

tournament = App.store.find(App.Tournament, 1);
tournament.set("name", "foo bar");
tournament.set("is_registered", true);

App.store.commit();

这会做类似的事情

PUT /tournaments/1 name: "foo bar"
POST /tournaments/1/register

或类似的东西,其中保存的属性与默认值不同。有没有一种简单的方法可以做到这一点,还是我以错误的方式解决问题?

4

1 回答 1

2

我会在服务器上管理这种复杂性。在超过 1 个请求中在客户端保存一个逻辑项的问题是,如果其中一个请求失败,您的数据可能已损坏。如果你做某种门面服务来协调什么数据去哪里,你可以围绕操作包装一个事务。

于 2012-12-17T21:33:21.103 回答