2015-10-06 50 views
0

我有我的模板中的用户列表,并在不同的模板,用户的显示。它工作没问题。显示用户信息时没有进行api调用,因为数据在进行用户调用时已经加载。但是,现在的用户展示我的用户信息和我的API调用users/:user_id/devices做设备的用户的列表。我只在刷新用户显示页面时才得到正确的结果。当我从用户列表转到用户显示时,数据未加载到视图中。我可以在余暇检查器中看到用户列表数据。我使用的是RSVP加载这两个资源是这样的:从列表中的用户向用户展示在余烬

export default Ember.Route.extend({ 
    model(params) { 
    return Ember.RSVP.hash({ 
     user: this.store.findRecord('user', params.user_id), 
     devices: this.store.query('device', { user: params.user_id }) 
    }); 
    } 
}); 

我的路由器是这样的:

Router.map(function() { 
    this.route('users', { path: 'front/users' }); 
    this.route('user', { path: 'front/users/:user_id'}); 
}); 

在我的用户模板我显示用户信息与{{model.user.first_name}}

你认为这是可以保留已经从索引加载的数据,并在进入用户显示以获取设备时进行新的api调用?

回答

1

的问题是,以显示从索引用户的联系是:

{{#link-to "user" user}}Show user{{/link-to}} 

的链接传递模型。这意味着路线的模型挂钩不会被调用。

的想法是,如果传递的模式,你可以访问user.devices模板,但只有当关系是异步的。

我得到

{{#link-to "user" user.id}}Show user{{/link-to}} 
正确的结果