Ember.js 在Ember JS中修改帖子url

Ember.js 在Ember JS中修改帖子url,ember.js,ember-cli,Ember.js,Ember Cli,您能解释一下如何在适配器中使用urlForCreateRecord来更改post url吗? 我有两个一对多关系的模范员工和任务 //Employee model import DS from 'ember-data'; export default DS.Model.extend({ empId : DS.attr(), password : DS.attr(), email : DS.attr(), tasks : DS.hasMany('task') })

您能解释一下如何在适配器中使用urlForCreateRecord来更改post url吗? 我有两个一对多关系的模范员工和任务

//Employee model
import DS from 'ember-data';

export default DS.Model.extend({
    empId : DS.attr(),
    password : DS.attr(),
    email : DS.attr(),
    tasks : DS.hasMany('task')
});

//Task model
import DS from 'ember-data';

export default DS.Model.extend({
    name : DS.attr(),
    description : DS.attr(),
    startDate : DS.attr(),
    endDate : DS.attr(),
    employee : DS.belongsTo("employee")
});
现在我想创建一个任务记录。 我正在创建这样的任务记录

let self=this;
let employee=this.store.peekRecord("employee",1);
let task=this.store.createRecord("task",{
    name:self.get("name"),
    description:self.get("description"),
    startDate:self.get("startDate"),
    endDate:self.get("endDate"),
    employee:employee
});
task.save();
post请求应该转到URL,如/employee/:employee\u id/tasks。 但是url是像/tasks一样创建的。 如何获得所需的post url?

您可以选择您的任务模型

ember generate adapter task
之后,您可以覆盖一个或多个


你试过什么?您从哪个适配器进行扩展?如何使用应用程序适配器中声明的主机?您的意思是什么?看看这个例子。任务适配器扩展了应用程序适配器。啊,你是说主机定义。因为使用了应用程序适配器的扩展主机!
//app/adapters/task.js
import ApplicationAdapter from './application';

export default ApplicationAdapter.extend({
  urlForCreateRecord(modelName, snapshot) {
    return 'employee/7/tasks';
  }
});