无法从模型中获取数据以便在Handlebars模板中进行渲染

时间:2013-08-30 22:19:28

标签: backbone.js handlebars.js marionette

我正在尝试使用带有Backbone w / Marionette的Handlebars模板。也许我正在咬掉比我现在可以咀嚼更多的框架,但是如果我能够解决这个问题,那么我将完成所有的工作。

所以我现在所拥有的是使用Handlebars模板渲染的Marionette Layout。模板中的静态代码是渲染的,所以我假设至少基本的布线是正确的。我在模型的fetch调用的成功回调中添加了一些调试代码,如下所示:

success: function(model, response, options) {
    $.log(response);
}

我得到的答案是这样的(数据已经消毒,但你明白了):

{
    "adminLoginId": 0,
    "deviceHashAVInfos": [
        {
            "foo": "bar"
        }
    ],
    "orgId": 0,
    "timeTaken": 39,
    "numHits": 1,
    "message": "success",
    "success": true
}

所以,似乎是从服务中获取数据。但对于我的生活,我似乎无法正确读取数据的语法。例如,只是尝试访问orgId,我尝试过:{{orgId}},{{this.orgId}},{{data.orgId}},{{response.orgId}},{{attributes.orgId}}。我甚至试图将orgId设置为模型中的默认值。

1 个答案:

答案 0 :(得分:0)

您不应该使用Marionette布局来显示模型(它用于显示区域中的视图)。相反,尝试使用项目视图并将模型作为句子传递,如您在此处所见:https://github.com/davidsulc/marionette-gentle-introduction/blob/master/assets/js/apps/contacts/show/show_controller.js#L14

您可以在此处详细了解如何使用基本视图显示模型:http://samples.leanpub.com/marionette-gentle-introduction-sample.pdf