Backbone - parse object into models

Backbone - parse object into models

HTML

<script src="http://underscorejs.org/underscore-min.js"></script>
<script src="http://backbonejs.org/backbone-min.js"></script>

JavaScript

var obj = [{
  "topicSummaryType": "MODULE",
  "details": {
    "10712": {
      "topicSummaryName": "15f Brand (all)",
      "topicSummaryId": 10712,
      "prop1": undefined,
      "commentCount": 8,
      "archivedCommentCount": 4,
      "topicIds": {
        "GAME_QUESTION": [139014, 139018],
        "TRAINING_PAGE": [38494],
        "GAME_END": [10712],
        "GAME_START": [10712]
      }
    },
    "10720": {
      "topicSummaryName": "15f Mountain Athletics™ (core)",
      "topicSummaryId": 10720,
      "commentCount": 7,
      "archivedCommentCount": 7,
      "topicIds": {
        "TRAINING_PAGE": [38595]
      }
    }
  },
  "commentCount": 0,
  "archivedCommentCount": 0
}];

var innerModel = Backbone.Model.extend({
 parse: function(response){
 var attr ={};
 attr.key = response.key;
 attr.ids = [];
 for(var i=0; i<response.ids.length; i++){
   attr.ids.push({idx:i, value: response.ids[i]});
 }
 
 response.ids;
 console.log(attr.key);
 console.log(attr.ids);
 return attr;
 }
});

var innerColl = Backbone.Collection.extend({
model: innerModel,

parse: function(response){
 console.log("topicIds");
 return _.map(response, function(value, key) {
      return {key:key, ids: response[key]};
    });

}
});
var MyModel = Backbone.Model.extend({
  parse: function(response){
     var attr ={};
     attr.key = response.key
     attr.topicSummaryName = response.model.topicSummaryName;
     attr.archivedCommentCount = response.model.archivedCommentCount;
     attr.topicIds = new innerColl(response.model.topicIds, {parse:true});
     console.log(response.model.archivedCommentCount);
     return attr;
  }
});

var MyCollection = Backbone.Collection.extend({
  model: MyModel,



  parse: function(response) {
    console.log('response', response);
    var responseObj = response[0]['details'];

    return _.map(responseObj, function(value, key) {
      return {key:response[0].topicSummaryType, model:responseObj[key]};
    });
  }
});

var myCollection = new...