Представьте, что у нас есть две таблицы в mysql: cars и engine.
Строка таблицы Cars будет иметь следующую структуру:
id
: интервалengineId
: int (внешний ключ к столбцуengines.id
)brand
: строка
Строка таблицы двигателей:
id
: интервал,type
: строка (представьте, что у нас есть электрические и дизельные двигатели)
Итак, я хочу получить все данные из этих таблиц, создать коллекции моделей на стороне клиента и, наконец, отобразить таблицу с объединенными результатами:
- идентификатор автомобиля
- название бренда
- Тип двигателя
Итак, я пробовал много примеров, но я не могу понять, что я делаю неправильно. Не могли бы вы помочь, пожалуйста?
// Create car model
window.Car = Backbone.RelationalModel.extend({
});
// Create engine model
window.Engine = Backbone.RelationalModel.extend({
relations: [{
type: 'HasMany',
key: 'cars',
relatedModel: 'Car',
reverseRelation: {
key: 'engine',
includeInJSON : 'engineId',
}
}]
});
// Create engine instance
var engine = new window.Engine({
id : 1,
type : 'electric',
});
// Create car instance
var car = new window.Car({
id : 1,
brand : 'Toyota',
engineId : 1,
});
// i expect to get 'electric'
console.log(car.getRelation('engine').type);