我有一个看起来像这样的模型:
Ext.define('Person', {
extend: 'Ext.data.Model',
fields: [
{name: 'name', type: 'string'},
{name: 'age', type: 'int'}
]
});
这由一家名为peopleStore
的商店使用。如果我通过UI更改了一个人的姓名或年龄,并在sync
上调用了peopleStore
方法,则该方法将正确执行,并且更改将保存到我的数据库中。问题是在我的数据库中每个人都有很多书,如果我更改一个人的书(通过UI修改peopleStore变量),那么我将无法执行sync方法,可能是因为商店看不到作为改变。表book
具有列name
和person_id
的列。
PS:我知道它不能正确执行sync方法,因为否则它最终将最终以success
或failure
回调方法结尾,但是不会。
答案 0 :(得分:0)
我以错误的方式修改了书单。假设在AppModule
实体类中有一个Person
属性,这是正确的方法。
List<Book> books
然后可以调用var person=peopleStore.getAt(personIndex);
var bookList=person.get('books');
var newBookList=booklist.slice(0, bookList.length);
newBoolList.push('new book');
person.set('books', newBookList);
方法。