Ember.js 为什么我必须在模板中使用emberjs中的model关键字?

Ember.js 为什么我必须在模板中使用emberjs中的model关键字?,ember.js,handlebars.js,Ember.js,Handlebars.js,我在我的emberjs项目中创建了一个模板作为一个部分,它在我的ember应用程序中的一个页面上运行良好。当我试图在另一个页面中重用分部时,我需要使用model关键字使其在两个页面中都能工作 样本把手模板我有 {{SomeProperty.NestedProperty}} 变成 {{model.SomeProperty.NestedProperty}} 为什么我需要从第一个换到第二个 我有类似的路线: this.resource("foretak", {path: "/foretak"},

我在我的emberjs项目中创建了一个模板作为一个部分,它在我的ember应用程序中的一个页面上运行良好。当我试图在另一个页面中重用分部时,我需要使用
model
关键字使其在两个页面中都能工作

样本把手模板我有

{{SomeProperty.NestedProperty}}
变成

{{model.SomeProperty.NestedProperty}}
为什么我需要从第一个换到第二个

我有类似的路线:

this.resource("foretak", {path: "/foretak"}, function() {
    this.route('opprett', { path: "/nytt/:org_nr" });
    this.route('detaljer', { path: "/:id" });
});
第一条路由(opprett)使用了模板,我不必指定
模型
,但对于第二条路由,我需要为所有内容添加前缀,以使其对两条路由都有效

路线:

SFag.ForetakOpprettRoute = Ember.Route.extend({
    model: function(params) {
        return params.org_nr;
    },
    setupController: function(controller, model) {
        var opprettForetak = SFag.OpprettForetak.get(model);
        controller.set('model', opprettForetak);
    }
});

SFag.ForetakDetaljerRoute = Ember.Route.extend({
    model: function(params) {
        return params.id;
    },
    setupController: function(controller, id) {
        var foretak = SFag.Foretak.get(id);
        controller.set('model', foretak);
    }
});
控制器为空。方法
SFag.Foretak.get
SFag.OpprettForetak.get
从不同的端点获取相同类型的数据


另外,如果我写'{{SomeProperty}}',我会看到在这两种情况下打印的'[Object]',因此它绑定到某个东西。

你的模板父控制器/路由看起来如何?@inuitivepixel,请参阅更新。你的更新显示了路由器地图,我要求提供控制器/路由定义,这很有趣,因为它将显示您是如何为这些对象设置模型的routes@intuitivepixel,再更新一次。我试图复制一个较小的样本,但没有成功。