Hãy nói rằng tôi có 2 mô hình:Ember.js hiệp hội dữ liệu không tiết kiệm
App.Address = DS.Model.extend({
street: DS.attr('string'),
person: DS.belongsTo('App.Person')
})
App.Person = DS.Model.extend({
name: DS.attr('string'),
addresses: DS.hasMany('App.Address')
})
Bây giờ tôi có thể tạo một người
App.person = App.Person.createRecord({name: 'Bill'});
App.store.commit();
Nếu tôi cố gắng thêm một địa chỉ để người đó như
nàyaddress = App.Address.createRecord({street: '123 Fake Street'});
App.person.get('addresses').pushObject(address);
và cam kết giao dịch
App.store.commit();
Địa chỉ mới sẽ được lưu tuy nhiên đối tượng người sẽ không được nhận dạng là đã thay đổi; mặc dù danh sách các id đã đi từ
{
...
"addresses": []
}
để
{
...
"addresses": [3]
}
Có cách nào để cho ember dữ liệu biết rằng đối tượng người của tôi đã được thay đổi và nó cần để được cứu?
Chỉnh sửa: Here là jsfiddle minh họa sự cố.
Tôi không quan tâm xem lỗi ở đâu, như giao diện điều khiển hiển thị kết quả mong đợi ... Bất kỳ cập nhật trạng thái về vấn đề của bạn? Có lẽ bạn đang sử dụng bản sửa đổi dữ liệu cũ? Bạn vẫn gặp phải vấn đề này? –