Что я хочу сделать, это реализовать функцию поиска через REST API. Для этого я выбрал отдельную коллекцию для результатов поиска.Невозможно подключить базовую модель к API REST
Вот что у меня есть:
Коллекция:
var mira = mira || {};
mira.IndustrySearchCollection = Backbone.Collection.extend({
model: mira.Industry,
initialize: function(models, options) {
this.query = options.query;
},
url: function() {
return "http://localhost:8000/manageDb/mira/industries/?q=" + this.query;
}
});
Модель:
var mira = mira || {};
mira.Industry = Backbone.Model.extend({});
Вот как я пытаюсь выполнить поиск:
var result = new mira.IndustrySearchCollection([], {query: "Ag"});
result.fetch({
error: function(){
console.log("Something went wrong");
},
success: function(){
console.log("It werks")
}});
Проблема в том, что способы возвращают ошибку. Я ожидаю, что это будет сделано, чтобы иметь несколько моделей в коллекции и автоматически привязывать атрибуты, возвращаемые сервером, к их фактическим значениям.
Вот фактические данные, возвращаемые сервером:
[{"id":2,"name":"Agriculture, forestry, fishing, and hunting","code":"11","id_classification":{"name":"CAN_NAICS","id_country":"Canada"}},
{"id":3,"name":"Agriculture, forestry, fishing, and hunting","code":"11","id_classification":{"name":"MEX_NAICS","id_country":"Mexico"}},
{"id":4,"name":"Agriculture, forestry, fishing, and hunting","code":"11","id_classification":{"name":"CHN_NAICS","id_country":"China"}},
{"id":231,"name":"Agricultural implement manufacturing","code":"33311","id_classification":{"name":"JP_NAICS","id_country":"Japan"}}]
EDIT: Некоторые получения дополнительной информации: швы что-то пойдет не так, прежде чем collection.parse(...)
, как я пытался изменить его и проверить ответ, но он не смог с та же проблема.
Вы указали класс 'model' в' IndustrySearchCollection'? –
@ArtemBaranovskii Да, извините. Я сделал. – khajvah
Какая ошибка вы видите? –