假设我有一个模型,它有一些存储在数据库中的属性,另一个存储在其他地方,但是客户端将它作为单个JSON blob接收。
App.Tournament = DS.Model.extend({
name: DS.attr("string"),
...
is_registered: DS.attr("boolean")
});
attribut 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
或类似名称,其中保存的属性与默认值不同。有没有一种简单的方法可以做到这一点,还是我以错误的方式解决问题?
答案 0 :(得分:2)
我会在服务器上管理这种复杂性。在多个请求中在客户端上保存一个逻辑项的问题是,如果其中一个请求失败,则您的数据可能已损坏。如果您使用某种Facade服务来协调哪些数据在哪里,您可以围绕操作包装事务。