我们假设有这样的路线:
@resource 'group', path: '/group/:group_id', ->
@route 'tweets'
现在我有这些路径和控制器:
在GroupTweetsRoute:
中执行此操作(无法正常工作)的天真方式 model: ->
@store.find 'tweet',
group_id: @get('controllers.group.id')
tolerance: @get('controllers.group.membership.tolerance')
我也试过了控制器。 所以目前我没有团体。但我稍后会看到它,或者如果我从group.index页面到达那里。
我的猜测是,在beforeModel回调中我可以做一些异步的基于promise的事情,等到组加载完毕。但具体到底是什么?
答案 0 :(得分:2)
modelFor可以在模型解析阶段使用。在构建和设置控制器之前,所有模型都已解析(这就是为什么你的controllerFor在深层模型钩子中不起作用的原因)。
var group = this.modelFor('group'),
id = group.get('id'),
tolerance = group.get('membership.tolerance');
答案 1 :(得分:0)
好的,这是我的案例中的解决方案:
model: ->
@store.find 'tweet',
group_id: @modelFor('group').get('id')
tolerance: @modelFor('group').get('membership.tolerance')