灰烬路线渲染模板:与模型:

时间:2014-04-21 18:34:54

标签: ember.js

我正在尝试使用自定义Ember Route,如下所示:

App.ResultRoute = Ember.Route.extend({

    renderTemplate: function(controller, model) {
        alert(model);
        this.render('result/main', {
            outlet: 'content',
            controller: controller
        });
    },

    model: function(params) {
        return this.get('store').find('result', params.id).then(function(result) {
            return result;
        })
    },
})

然而,看起来像renderTemplate:不喜欢model:。换句话说,我可以在直接访问路径时进入renderTemplate,但是当我尝试实现这样的模型时它就不会工作了。

关于如何使这项工作的任何想法?

谢谢,

1 个答案:

答案 0 :(得分:0)

我认为,你不应该使用然后

model: function(params) {
        return this.get('store').find('result', params.id);
  }

find方法返回一个由ember路由进程使用的promise对象。

我还建议让Ember renderTemplate基于它的默认值。如果遵循惯例,通常不应在路线中实施此方法。

在您的情况下,App.ResultController必须扩展Ember.ObjectController。