После синхронизации() обновление только одной строки, которая была изменена, но не всех из ответа.Как обновить все свойства после store.sync()?
Модель:
Ext.define('Exp.model.ProfileChannel', {
extend: 'Ext.data.Model',
fields: ['id', 'channel', 'server', 'profile'],
proxy: {
type: 'ajax',
api: {
read: '/profilechannel/list',
update: '/profilechannel/save'
},
reader: {
type: 'json',
root: 'data'
}
}
});
Магазин:
Ext.define('Exp.store.ProfileChannels', {
extend: 'Ext.data.Store',
model: 'Exp.model.ProfileChannel',
autoSync: true
});
Допустим, в магазине у меня есть запись, как это:
{
id: '1',
profile: 'profile id',
channel: '',
server: ''
}
затем после: record.set('channel', 'channel id');
ответ:
{
"success":true,
"data":[
{
id: '1',
profile: 'profile id',
channel: 'channel id',
server: 'server id added on backend'
}
]
}
И в конце концов, у меня есть запись так:
{
id: '1',
profile: 'profile id',
channel: 'channel id',
server: ''
}
Таким образом, проблема в том, как я могу обновить и значение сервера У меня есть новое значение в ответ. это ошибка? или я делаю это неправильно? почему я должен поместить все свойства, если extjs игнорирует их?
Как вы прошли мимо этого? Возможный дубликат здесь: http://stackoverflow.com/questions/16219638/store-sync-with-new-record-does-not-import-server-generated-fields-in-response – HDave