Итак, скажем, у меня есть серверная часть магазина, поэтому мы делаем все удаленно. Пример магазинов:
Ext.create('Ext.data.Store', {
model: 'MyApp.model.ContactModel',
remoteFilter: true,
remoteSort: true,
autoLoad: true,
autoSync: true,
storeId: 'ContactStore-1'
});
Ext.create('Ext.data.Store', {
model: 'MyApp.model.ContactModel',
remoteFilter: true,
remoteSort: true,
autoLoad: true,
autoSync: true,
storeId: 'ContactStore-2'
});
У меня возникла проблема, когда я делаю следующее:
Ext.getStore('ContactStore-1').insert(0,{'name':'say'});
Ext.getStore('ContactStore-2').insert(0,{'name':'hi'});
Что происходит, так это то, что когда я смотрю на БД, у меня появляется 2 записи. Я получаю «привет» один раз и «говорю» дважды. Судя по всему, происходит то, что отправляется первый оператор вставки, а затем отправляется второй оператор вставки, но с данными из обеих вставок (я предполагаю, что они используют одну и ту же модель и, следовательно, один и тот же прокси)
Мысли о том, как я могу решить эту проблему, чтобы запросы на вставку не объединялись автоматически?
Модель для вашего удовольствия:
Ext.define('MyApp.model.ContactModel', {
extend: 'Ext.data.Model',
idProperty: 'idContact',
fields: [
{
name: 'idContact',
type: 'int'
},
{
name: 'name',
type: 'string'
}
],
proxy: {
type: 'direct',
api: {
create: contact.createRecord,
read: contact.getResults,
update: contact.updateRecords,
destroy: contact.destroyRecord
},
reader: {
type: 'json',
root: 'data'
}
}
});