2013-06-29 6 views
3

Я пытаюсь сохранить коллекцию магистральную как следующее:Uncaught TypeError: Преобразование круговую структуру JSON: Backbone

var backgridModel = Backbone.Model.extend({ }); 

var BackgridCollection = Backbone.Collection.extend({ 
    model: backgridModel, 
    url : 'api/list' 
}); 

var backgriCollections = new BackgridCollection(); 
backgriCollections.fetch(); 

var CreatePuppetRequest = Backbone.Model.extend({ 
    url : 'api/createTable', 
    toJSON: function() { 
     console.log(backgriCollections.toJSON()); 
     return backgriCollections.toJSON(); 
    } 
}); 

Я делаю вызов сервера, как в следующем:

var puppetTable = new CreatePuppetRequest(); 
puppetTable.save({}, { 
    success : function(model, response) { 
     alert("Successfully submitted " + num + " puppet(s)"); 
     puppetFinalCollection.reset(); 
     $('#create-puppet-table-button').removeAttr("disabled"); 
    }, 
    error : function(model, response) { 
     if (response.status == 400) 
      that.showErrors($.parseJSON(response["responseText"])); 
     else 
      console.log(response["responseText"]); 
     puppetFinalCollection.reset(); 
     $('#create-puppet-table-button').removeAttr("disabled"); 
    } 
}); 

консоли выход

0: Object 
designation: "m" 
firstName: "sdfghj" 
function(){ return parent.apply(this, arguments); }: Object 
lastName: "sdfghj" 
__proto__: Object 
length: 1 
__proto__: Array[0] 

function(){ return parent.apply(this, arguments); }: Object добавляется дополнительно к модели, что я не знаю, почему она добавлена?

К этому добавлен Uncaught TypeError: Converting circular structure to JSON, который также блокирует вызов сервера.

EDIT

после извлечения() с сервера мои данные будут выглядеть следующим образом строку JSON:

[ 
    { 
     "userid": "", 
     "firstName": "Mayank", 
     "lastName": "Kumar", 
     "designation": "Software Engineer" 
    }, 
    { 
     "userid": "", 
     "firstName": "Shylendra", 
     "lastName": "Bhat", 
     "designation": "Software Engineer" 
    }, 
    { 
     "userid": "", 
     "firstName": "Akash", 
     "lastName": "Waran", 
     "designation": "Software Engineer" 
    }, 
    { 
     "userid": "", 
     "firstName": "Shreyas", 
     "lastName": "Lokkur", 
     "designation": "Software Engineer" 
    }, 
    { 
     "userid": "", 
     "firstName": "Anthony", 
     "lastName": "Raj", 
     "designation": "Software Engineer" 
    }, 
    { 
     "userid": "", 
     "firstName": "Dheemanth", 
     "lastName": "Bharadwaj", 
     "designation": "Software Engineer" 
    }, 
    { 
     "userid": "", 
     "firstName": "Prasanna", 
     "lastName": "Adiga", 
     "designation": "Software Engineer" 
    } 
] 

и заселяется в таблице тоже.

+0

hi mu слишком короткий, надейся полностью, вы также можете заглянуть в 'http: // stackoverflow.com/questions/17378924/region-is-acting-strange-when-the-page-is-refreshed' please –

+0

Пожалуйста, взгляните на мой EDIT. –

+0

Я тоже получаю ту же ошибку, но в моем случае это происходит, когда я получаю строку ("") вместо json = {} объекта. –

ответ

-1

Я сделал ошибку, когда добавляю модель в коллекцию, я добавил тип вместо экземпляра типа.

var backgridModel = Backbone.Model.extend({ }); 

типа я должен добавить

var row = new backgridModel() вместо я использовал backgridModel, чтобы создать новую строку.