我在让 Backbone 保存多层集合时遇到一些问题。我有以下型号:
var Question = Backbone.Model.extend({
urlRoot: "/question"
});
var QuestionList = Backbone.Collection.extend({
model: Question,
url: "/question",
parse: function(response) {
return response.objects;
}
});
var QuestionBank = Backbone.Model.extend({
urlRoot: "/questionbank"
});
var QuestionBankList = Backbone.Collection.extend({
model:QuestionBank,
url: "/questionbank",
parse: function(response) {
return response.objects;
}
});
var Answer = Backbone.Model.extend({
urlRoot: "/answer"
})
var AnswerList = Backbone.Collection.extend({
model: Answer,
url: "/answer",
parse: function(response) {
return response.objects;
}
});
一个题库有很多问题,一个问题有很多答案。当我保存我的集合时,模型是正确的,但发出的 JSON 不包括第二级集合(答案):
{"active_question_bank": true, "id":
"51a8c5d72ace7a458fd0d000", "question_bank_name": "New Q", "questions":
[{"active_question": true, "answers": [], "difficulty": null,
"id": "51a8d1be2ace7a458fd0d008", "question": "What is your favorite Color?",
"question_is_and_type": false, "question_type": 1, "resource_uri":
"/question/51a8d1be2ace7a458fd0d008", "tags": [""]}], "resource_uri":
"/questionbank/51a8c5d72ace7a458fd0d000"}
特别是它每次都会发送一个空白的“答案”:[]。我对骨干比较陌生,所以也许这是一项不可能完成的任务,但这个概念似乎相当微不足道。