Я использую Rails, backbone.js (изучаю это сейчас). Допустим, у вас есть две модели, Автомобиль и Двигатель.
var Car = Backbone.Model.extend({
initialize: function() {
if(this.get('engine') != undefined) this.engine = new Engine(this.get('engine'));
}
}
var redCar = new Car({
'color': 'red',
// The controller nests the model
'engine': {
'horsepower': '350'
}
});
redCar.save()
Как правильно отправить engine_attributes
на контроллер? (Автомобиль accepts_nested_attributes_for :engine
, поэтому он ожидает engine_attributes
.) Должен ли я переопределить магистраль sync()
? Есть ли лучшее соглашение для вложенных моделей?
Может быть, мне не следует возвращать вложенные модели из контроллера или возвращать engine_attributes
вместо engine
?
С другой стороны, я использую Rails respond_with(@car, :include => :engine)
(то же самое, что и @car.to_json(:include => :engine)
. Тот факт, что этот атрибут относится к атрибутам движка в engine
, но модель ожидает, что engine_attributes
кажется противоречивым - я никогда был уверен, как это смириться.