Допустим, у меня есть модель Sencha Touch, подобная этой:
Ext.regModel('User', {
'fields': [{
'name': 'first_name',
'type': 'string'
}, {
'name': 'last_name',
'type': 'string'
}, {
'name': 'full_name',
'type': 'string',
'convert': function(v, record) {
return record.data.first_name + ' ' + record.data.last_name;
}
}, {
'name': 'age',
'type': 'integer'
}
]});
Сервер возвращает поля first_name, last_name и age при получении записей. Однако, когда я обновляю имя и / или фамилию пользователя и звоню в магазин по номеру sync()
, он отправит на сервер все поля, включая full_name и age, даже если я этого не хочу.
Я знаю, что могу просто игнорировать эти данные на сервере, но в некоторых случаях (например, с большим количеством полей с 'convert') это добавляет много ненужных служебных данных в полезную нагрузку.