如何推送到js-data资源中的数组

时间:2015-12-28 01:45:02

标签: jsdata js-data-angular

我有一个User对象,它有很多路由对象。

我加载它们:

return User.find(username).then(function(user) {
    return User.loadRelations(user.username, ['routes'])
        .then(function(user) {
            return user;
        });
});

我的用户对象如下: implementation

我希望能够使用user.routes.push(newRoute)然后保存用户。但是我无法推行新的路线。

1 个答案:

答案 0 :(得分:1)

1)js-data< = 2.x不支持深度保存关系。您需要向Resource添加一个方法,将嵌套的有效负载发送到适配器。

2)此外,默认情况下,关系配置中localField选项指定的字段将是一个属性访问器,可以动态地从商店中提取相关项。按下属性访问器返回的数组没有任何意义,因为每次访问属性时它都是不同的数组。

您可以使用linkRelations: false设置删除属性访问者,但是您必须手动管理链接。在那种情况下,你可以推进阵列,但这对上述1)没有帮助。