小编mar*_*oow的帖子

在ember-data中保留父级和嵌入式记录

我有以下型号:

App.Company = DS.Model.extend({
  name:  DS.attr('string'),
  accounts: DS.hasMany('App.Account', {
    inverse: 'company'
  })
});

App.Account = DS.Model.extend({
  login:                 DS.attr('string'),
  first_name:            DS.attr('string'),
  last_name:             DS.attr('string'),
  email:                 DS.attr('string'),
  password:              DS.attr('string'),
  password_confirmation: DS.attr('string'),
  company:               DS.belongsTo('App.Company')
});
Run Code Online (Sandbox Code Playgroud)

该公司被定义为嵌入在帐户中:

DS.RESTAdapter.map('App.Account', {
  company: { embedded: 'always' }
});
Run Code Online (Sandbox Code Playgroud)

当我创建一个新帐户时,公司数据正确嵌入到帐户数据中,我看到了我期望在服务器端发出的POST请求:

Started POST "/accounts" for 127.0.0.1 at 2013-06-27 13:30:53 +0200
Processing by AdminUsersController#create as JSON
  Parameters: {"account"=>{"login"=>"fsdfdf", "first_name"=>"fgdfgh", "last_name"=>"fsfdsfdsfsd@fgfdgdfgf.de", "email"=>"dsfdsgds@frgdfgfgdfg.de", "password"=>"[FILTERED]", "password_confirmation"=>"[FILTERED]", "company"=>{"name"=>"gfdhgtrhzrh"}}}
Run Code Online (Sandbox Code Playgroud)

但是,我也看到了公司本身的额外POST请求:

Started POST "/companies" for 127.0.0.1 at 2013-06-27 13:30:53 +0200
Processing by CompaniesController#create as JSON
  Parameters: {"company"=>{"name"=>"gfdhgtrhzrh"}} …
Run Code Online (Sandbox Code Playgroud)

ember.js ember-data

17
推荐指数
1
解决办法
452
查看次数

标签 统计

ember-data ×1

ember.js ×1