在EmberJS中保存hasMany关系的正确方法是什么



在EmberJS中,我试图保存一个有hasMany关系的模型。我在其他地方看到过这个问题,但通常是关于将子模型与父模型同时持久化。

在我的情况下,子模型已经被持久化了,我只需要参考它们。我尝试过几种不同的方法,但都无济于事。我似乎在任何地方都找不到清楚的记录,而且我看到的一半例子似乎已经过时了。

这是一个jsbin的一次尝试。

http://jsbin.com/oNuQIGEF/3/edit?html,js,输出

单击该按钮应该将一个新用户添加到具有两个项目的列表中,就像显示的其他两个用户一样。然而,它只是添加了没有项目的用户。

如有任何帮助,我们将不胜感激!

在添加子项之前,似乎必须持久化父项

App.UsersController = Ember.ArrayController.extend({
  actions: {
    save: function(model) {
      var controller = this;
      this.store.find('project').then(function(projects) {
        var user = controller.store.createRecord('user', {
          name: 'Joe'
        });
        user.save().then(function() {
          user.get('projects').pushObjects(projects);
        });
      });
    }
  },
});

还可以查看以下jsBin

相关内容

最新更新