2014-09-22 43 views
1

給出下面的JSON:骨幹,讓pararmeters別人比數據採集

{ 
    "admin": false, 
    "data": [ 
    { 
     value: key, 
     value :key 
    }, 
    { 
     value: key, 
     value :key 
    } 
    ] 
} 

我定義我的集合是這樣的:

var myCollection = Backbone.Collections.extend({ 
    url: myurl.com, 
    parse : function (response) { 
     return response.data; 
    } 
}); 

它的工作原理般的魅力,它填補我收集的數據然而,在陣列中,我需要在admin等於true時渲染一些內容。但我無法找到將該值傳遞給模板的方法。

有什麼機會可以幫助你解決這個問題嗎?

謝謝先進。

+0

當你需要的信息的管理員讓它不會刪除它在解析,粘貼您的模板也讓我可以幫助 – StateLess 2014-09-22 15:35:30

回答

2

您可以在管理標誌保存爲解析方法的集合的性質:

var myCollection = Backbone.Collection.extend({ 
    model: myModel, 
    isAdmin: false, 
    ... 
    parse : function (response) { 
     this.isAdmin = response.admin; //save admin flag from response 
     return response.data; 
    } 
}); 

然後你可以檢索它,並將它傳遞到您的模板,或在視圖中使用它以任何其他方式呈現方法:

var myView = Backbone.View.extend({  
    collection: new myCollection(), 
    ... 
    render: function(){ 
     //retrieve admin flag from collection: 
     var isAdmin = this.collection.isAdmin; 

     //you could add it into the json you pass to the template 
     //or do anything else with the flag 

    }        
}); 

您可以嘗試this fiddle具有非常基本的渲染功能。

+0

謝謝你很多人!我不會自己弄明白,它像魅力一樣工作! – andresmijares25 2014-09-22 16:24:14

+0

這也有幫助,因爲我使用Python/Flask,而jsonify不允許頂層數組,所以我可以用這種方式提取數據。 – contrapsych 2015-01-13 19:26:13