Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.03.2016, 13:36
Новичок на форуме
Отправить личное сообщение для skoropadas Посмотреть профиль Найти все сообщения от skoropadas
 
Регистрация: 18.03.2016
Сообщений: 5

HasMany Model
ExtJs 6
Здравствуйте, не как не могу доделать форму.
Суть такова, есть Store(SprMinefield) в нем находятся данные, пользователь выбирает определенную запись и она начинает редактироваться в созданной форме, так же на форме существует таблица которая наследует записи из связанной модели.
При нажатии на кнопку сохранить у формы, данные отправляются на сервер, сохранение происходит нормально, проблема в том что когда север возвращает обновленную запись, обновляется лишь родительская модель, т.е. данные в полях формы, а связанная остается не обновленной (именно строки грида).

Родительская модель:
Ext.define('Drilling.model.SprMinefieldModel', {
    extend : 'Ext.data.Model',
    uses: ['Drilling.model.SprLayerModel'],
    fields : [
        {
            name : 'name',
            type : 'string'
        },
        {
            name : 'short_name',
            type : 'string'
        },
        {
            name : 'spr_org_structure_id',
            type : 'int'
        },
        {
            name : 'code',
            type : 'int'
        },
        {
            name : 'conductor',
            type : 'int'
        },
        {
            name : 'color',
            type : 'string'
        },
        {
            name : 'comments',
            type : 'string'
        }
    ],
    validators: {
        name: 'presence'
    },
    proxy: {
        type: 'ajax',
        batchActions: false,
        api: {
            read: '/spr_minefields.json',
            create: '/spr_minefields/add.json',
            update: '/spr_minefields/update.json',
            destroy: '/spr_minefields/remove.json'
        },
        reader : {
            type : 'json'
        },
        writer : {
            type : 'json',
            //writeAllFields: true,
            partialDataOptions: {
                associated: true,
                changes: true
            }
        },
        listeners: {
            exception: onAjaxException
        }
    },
    hasMany: {
        model: 'Drilling.model.SprLayerModel',
        name: 'spr_layers_attributes'
    }
});


Дочерняя:
Ext.define('Drilling.model.SprLayerModel', {
    extend : 'Ext.data.Model',
    fields : [
        {
            name: 'id',
            type: 'int'
        },
        {
            name: 'name',
            type: 'string'
        },
        {
            name: 'density',
            type: 'int'
        },
        {
            name: '_destroy',
            type: 'string'
        }

    ],
    validators: {
        name: 'presence'
    },
    proxy: {
        type: 'memory',
        listeners: {
            exception: onAjaxException
        }
    }
});


Может это конечно баг такой, и данный функционал вовсе не предусмотрен, но прощу помощи, возможно кто то уже решал подобную задачу.
Ответить с цитированием
  #2 (permalink)  
Старый 22.03.2016, 13:13
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

А вы второе сторе синхронизировали?
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
Ответить с цитированием
  #3 (permalink)  
Старый 05.04.2016, 12:27
Новичок на форуме
Отправить личное сообщение для skoropadas Посмотреть профиль Найти все сообщения от skoropadas
 
Регистрация: 18.03.2016
Сообщений: 5

Сообщение от khusamov Посмотреть сообщение
А вы второе сторе синхронизировали?
каким образом? разве основной стор не синхронизирует дочерний при наличии связи hasMany?
Ответить с цитированием
  #4 (permalink)  
Старый 05.04.2016, 13:03
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

Если синхронизировался, то проблемы очевидно не было бы? Так что может из-за этого и проблема.
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
Ответить с цитированием
  #5 (permalink)  
Старый 05.04.2016, 13:19
Новичок на форуме
Отправить личное сообщение для skoropadas Посмотреть профиль Найти все сообщения от skoropadas
 
Регистрация: 18.03.2016
Сообщений: 5

Сообщение от khusamov Посмотреть сообщение
Если синхронизировался, то проблемы очевидно не было бы? Так что может из-за этого и проблема.
Ну это понятно, у меня возникает вопрос почему данные в дочернем сторе не синхронизируются, я же отвечаю таким же набором данных как и при первоначальной закрузке, однако обновляется только родительский стор но не дочерний, дочерний вообще имеет тип "memory"
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод информации из массива в таблицу ArtemGavrilenko Элементы интерфейса 7 29.06.2017 02:38
как передать параметр javascript в model (asp.net mvc4 razor) Siend Общие вопросы Javascript 0 09.01.2015 14:30
json, model, treegrid - странное поведение модели svgroz ExtJS 4 16.08.2013 12:10
Browser Object Model, где найти для всех платформ? alta Javascript под браузер 2 09.10.2010 21:24
Component Object Model в JavaScript sionus Events/DOM/Window 1 04.02.2010 13:37