EmberJS访问关联创建的关联数据

时间:2015-04-13 11:14:08

标签: ember.js

我有2个模型:任务和项目,项目有多个任务。但是,如何为特定项目创建新任务?

我有这条路线:
@resource('projects', -> @route('show', { path: '/:project_id' })

在projects / show-template中,我正在调用{{render "tasks" model.tasks}}来显示属于项目的所有任务+一个输入助手来添加新的任务。问题是我不知道如何在createTask-action(它驻留在TasksController中)中获取项目的id。

我无法访问params,我不想在window.location上使用正则表达式来获取id。

(EmberJS 1.10.0)

2 个答案:

答案 0 :(得分:0)

你应该尝试像

这样的东西
this.store.createRecord('task', {project: this.modelFor('projects/show')});

您从projects/show路线获取项目,并将task的{​​{1}}属性设置为该对象。

答案 1 :(得分:0)

我通过将输入助手移动到Ember.Component来修复此问题,然后将其添加到projects / show-template并将项目传递给:{{add-task project=model}}。我还将createTask() - action从TasksController移动到新组件。