1
У меня есть модель пользователя:ExtJS Databinding ViewModel и сетка не работает
Ext.define('CrudTest.model.User', {
extend: 'Ext.data.Model',
idProperty: 'Id',
fields: [
{ name: 'Id', type: 'int' },
{ name: 'Name', type: 'string' },
{ name: 'PhoneNumber', type: 'int' },
{ name: 'Address', type: 'string' },
{ name: 'StateName', type: 'string' },
{ name: 'StateId', type: 'int', reference: 'State' }, ],
proxy: {
type: 'rest',
url:'users',
writer: { writeAllFields: true },
},
});
и пользователи магазина:
Ext.define('CrudTest.store.Users', {
extend: 'Ext.data.Store',
model: 'CrudTest.model.User',
autoLoad: true,
});
и UserViewModel ViewModel:
Ext.define('CrudTest.viewmodel.UserViewModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.uservm',
stores:{ users: new CrudTest.store.Users()},
});
и для отображения пользователей:
Ext.define('CrudTest.view.Grid', {
extend: 'Ext.grid.Panel',
requires: ['CrudTest.store.Users', 'CrudTest.store.States', 'CrudTest.model.RegisterUserVM', 'CrudTest.viewmodel.UserViewModel'],
alias: 'widget.myGrid',
viewModel: { type: 'uservm', },
columns: [
{ text: 'Name', bind: '{users.name}' },
{ text: 'PhoneNumber', bind: '{users.PhoneNumber}' },
{ text: 'Address', bind: '{users.Address}', sortable: false, },
],
});
Сетка хорошо загружается при установке магазина моей сетки для пользователей. но мне нужно привязку к viewmodel, чтобы в этом случае моя сетка выглядела без какой-либо строки и без ошибки extjs. я прав?