Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 余烬数据剥离有很多关系_Ember.js_Ember Data - Fatal编程技术网

Ember.js 余烬数据剥离有很多关系

Ember.js 余烬数据剥离有很多关系,ember.js,ember-data,Ember.js,Ember Data,我在这方面很糟糕,但我在控制器上有以下操作: saveOrganization: function() { var org = this.get('model'); var users = org.get('users').then(function() { console.log(org); //users are a part of org org.save(); //users are not sent to server }); } 和关联的组织模型:

我在这方面很糟糕,但我在控制器上有以下操作:

saveOrganization: function() {  
  var org = this.get('model');
  var users = org.get('users').then(function() {
    console.log(org); //users are a part of org
    org.save(); //users are not sent to server
  });
}
和关联的组织模型:

export default DS.Model.extend({
  createdAt: DS.attr('date'),
  updatedAt: DS.attr('date'),
  name: DS.attr('string'),
  address: DS.attr('string'),
  city: DS.attr('string'),
  state: DS.attr('string'),
  zip: DS.attr('string'),
  users: DS.hasMany('user',{async:true}),
  totalUsers: function() {
    return this.get('users').get('length');
  }.property('users.@each')
});
和关联用户模型:

export default DS.Model.extend({
    createdAt: DS.attr('date'),
    updatedAt: DS.attr('date'),
    name: DS.attr('string'),
    email: DS.attr('string'),
    bio: DS.attr('string'),
    picture: DS.attr('string'),
    organization: DS.belongsTo('organization'),
    type: DS.attr('string'),
    username: DS.attr('string'),
    password: DS.attr('string')
});
从注释中可以看出,当我将用户数组作为组织的一部分时,我可以看到数据,但当我保存它时,ember data从不将用户数组作为发送到服务器的数据的一部分发送

有人能帮我弄清楚到底发生了什么吗


谢谢。

堆栈溢出不会让我将此标记为重复,但它确实是。余烬数据在这方面是愚蠢的,如果它是多人关系,它只包括
belongsTo
端的id

App.ApplicationSerializer = DS.RESTSerializer.extend({

 serializeHasMany: function(record, json, relationship) {
    var key = relationship.key;
    var payloadKey = this.keyForRelationship ? this.keyForRelationship(key, "hasMany") : key;
    var relationshipType = RelationshipChange.determineRelationshipType(record.constructor, relationship);

    if (relationshipType === 'manyToNone' || relationshipType === 'manyToMany'
        || relationshipType === 'manyToOne') {  // This is the change
      json[payloadKey] = get(record, key).mapBy('id');
      // TODO support for polymorphic manyToNone and manyToMany relationships
    }
  },
});