Как получить Model из View

22 views
Skip to first unread message

Viktor Sirchenko

unread,
Aug 26, 2014, 10:42:01 PM8/26/14
to ext...@googlegroups.com
Всем привет, есть такая задача

Есть View, в нем есть GridPanel, которая заполняется данными из метода расположенного в контроллере
так вот в этом методе надо вытащить текущий объект, т.е. модель

Любые советы приветствуются

Daniil Veriga

unread,
Aug 27, 2014, 1:17:59 AM8/27/14
to ext...@googlegroups.com
Привет.

AjaxProxy используете? Насколько я знаю, в контроллере модель не сохраняется сама по себе. Поэтому либо сохранять модель где-то на сервере, когда эта модель доступна, либо сабмитить с клиента.


--
Вы получили это сообщение, поскольку подписаны на группу "Ext.NET".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес extnet+un...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.

Viktor Sirchenko

unread,
Aug 27, 2014, 10:55:39 AM8/27/14
to ext...@googlegroups.com
Да использую AjaxProxy, ну я хочу модель не из контроллера вытащить, а из вью, или точнее из FormPanel
А вот сабмитить ее с клиента это подойдет, только вот как - через ExtraParams, опять же надо брать модель с вью

вторник, 26 августа 2014 г., 23:17:59 UTC-6 пользователь Daniil написал:

Daniil Veriga

unread,
Aug 28, 2014, 7:34:39 AM8/28/14
to ext...@googlegroups.com
И используйте Parameters у Store вместо ExtraParams у AjaxProxy.

Viktor Sirchenko

unread,
Aug 28, 2014, 11:06:31 AM8/28/14
to ext...@googlegroups.com
Через getValues() я смогу получить только значения параметром, но не объект целиком?

четверг, 28 августа 2014 г., 5:34:39 UTC-6 пользователь Daniil написал:

Viktor Sirchenko

unread,
Aug 29, 2014, 1:17:57 AM8/29/14
to ext...@googlegroups.com
Попробовал в методе контроллера получить доступ к FormPanel через X.GetCmp<FormPanel>(nameForm), но доступа к getForm() или getValues() нет

четверг, 28 августа 2014 г., 21:06:31 UTC+6 пользователь Viktor Sirchenko написал:

Daniil Veriga

unread,
Aug 30, 2014, 3:05:57 AM8/30/14
to ext...@googlegroups.com
Через getValues() я смогу получить только значения параметром, но не объект целиком?

Не уверен, что хорошо понимаю вопрос. Какой объект вы бы хотели получить?

 Вызов .getValues() возвращает JSON объект, который можно отправить на сервер и десериализовать там в объект модели.


Попробовал в методе контроллера получить доступ к FormPanel через X.GetCmp<FormPanel>(nameForm), но доступа к getForm() или getValues() нет

Здесь некоторая информация о X.GetCmp<>().
http://forums.ext.net/showthread.php?38701&p=176681&viewfull=1#post176681


--

Viktor Sirchenko

unread,
Sep 2, 2014, 10:15:45 AM9/2/14
to ext...@googlegroups.com
Значит из вариантов получить данные у меня только получить getValues() на стороне клиента и передать данные на сервер,
а могу я данные вытащить из объекта FormPanel, уже на стороне сервера?

суббота, 30 августа 2014 г., 1:05:57 UTC-6 пользователь Daniil написал:

Daniil Veriga

unread,
Sep 2, 2014, 10:45:46 AM9/2/14
to ext...@googlegroups.com
а могу я данные вытащить из объекта FormPanel, уже на стороне сервера?

Нет. Данные на сервере не хранятся. Единственный вариант получить текущие данные из View - сабмитить их.
Message has been deleted

Daniil Veriga

unread,
Sep 3, 2014, 2:35:10 AM9/3/14
to ext...@googlegroups.com
Не понимаю вопрос... Если объекта ещё не существует, то что передавать на сервер?:)


2014-09-02 19:29 GMT+04:00 Viktor Sirchenko <vsirc...@gmail.com>:
Тогда другой вопрос, если я открываю на клиенте View, для создания объекта, по сути его еще не существует, как в таком случае я могу передат данные на сервер?

вторник, 2 сентября 2014 г., 8:45:46 UTC-6 пользователь Daniil написал:

Viktor Sirchenko

unread,
Sep 4, 2014, 2:31:24 AM9/4/14
to ext...@googlegroups.com
Тот вопрос я уже решил, у меня другой возник, может немного не по EXT.NET

Когда я получаю объект со списком дочерних объектов, и пытаюсь его сохранить, я получаю ошибку при сохранении в базу
Ошибка происходит из за того, что родительский объект не имеет еще ID и у дочерних элементов нет Id родителя, а в базе эти таблицы связаны через внешний ключ


среда, 3 сентября 2014 г., 12:35:10 UTC+6 пользователь Daniil написал:

Daniil Veriga

unread,
Sep 4, 2014, 4:30:10 AM9/4/14
to ext...@googlegroups.com
Сложно сказать.

Viktor Sirchenko

unread,
Sep 4, 2014, 9:52:08 PM9/4/14
to ext...@googlegroups.com
Не этот вопрос решился тоже

четверг, 4 сентября 2014 г., 14:30:10 UTC+6 пользователь Daniil написал:
Сложно сказать.

Viktor Sirchenko

unread,
Sep 4, 2014, 10:53:20 PM9/4/14
to ext...@googlegroups.com
Продолжаем тему, вопросы еще остались

Пытаюсь на клиенте получить значение из NumberField через extraParams.Add(new Parameter { Name = "ID", Value = "Ext.getCmp('ID').getValue()", Mode = ParameterMode.Value });
но в консоли получаю ошибка на то что нет такого getValue()

на клиента это форма приходит, поле такое есть, и значение оно имеет, а вот ошибку выдает и форму не отображает

пятница, 5 сентября 2014 г., 7:52:08 UTC+6 пользователь Viktor Sirchenko написал:

Daniil Veriga

unread,
Sep 5, 2014, 12:48:33 AM9/5/14
to ext...@googlegroups.com
Ошибка точно на этот параметр? По идее, при ParameterMode.Value ошибки быть не должно в принципе, потому что значение параметра будет строкой - "Ext.getCmp('ID').getValue()" (с ковычками то есть), а не JavaScript кодом. Надо использовать ParameterMode.Raw.


--

Viktor Sirchenko

unread,
Sep 5, 2014, 12:50:18 AM9/5/14
to ext...@googlegroups.com
Вопрос решился немного иначе, так что спасибо за помощь

пятница, 5 сентября 2014 г., 10:48:33 UTC+6 пользователь Daniil написал:
Reply all
Reply to author
Forward
0 new messages