Russian Qt Forum

Qt => Model-View (MV) => Тема начата: AAS от Октябрь 22, 2010, 11:57



Название: Изменение данных внутри QSqlQueryModel (не в базе)
Отправлено: AAS от Октябрь 22, 2010, 11:57
У меня есть очень тяжелый селект результатом из которого приходят несколько записей которые я пихаю в QSqlQueryModel.
Понадобилось эти данные в модели менять (нужды чтобы изменение модели изменяли базу нет).
Отнаследовлся от QSqlQueryModel,начал писать функцию setData(..) и тут понял что ничего не понял. Где внутри QSqlQueryModel хранятся данные? Как до них доступится и изменить?

Пожалуйста дайте пример.

Тем кто захочет сказать "смотри в офф.документации" - пример из докуметации (http://doc.qt.nokia.com/4.7/sql-querymodel.html) всё что делает так это выполняет update при изменениии данных и заново делает select для всей модели, а мне этого какраз и не надо.


Название: Re: Изменение данных внутри QSqlQueryModel (не в базе)
Отправлено: Пантер от Октябрь 22, 2010, 12:12
Напиши свою модель. Это не сложно.


Название: Re: Изменение данных внутри QSqlQueryModel (не в базе)
Отправлено: crossly от Октябрь 22, 2010, 12:17
дынные в рекордсете... ты их не изменишь.... простое решение унаследоватся и добавить кэш....


Название: Re: Изменение данных внутри QSqlQueryModel (не в базе)
Отправлено: AAS от Октябрь 25, 2010, 06:35
Напиши свою модель. Это не сложно.
Я её и пишу, и прошу пример как это делать ???

дынные в рекордсете... ты их не изменишь.... простое решение унаследоватся и добавить кэш....
Есть ли пример как это реализовывать правильно (ну или хотябы неправильно)?


Название: Re: Изменение данных внутри QSqlQueryModel (не в базе)
Отправлено: Пантер от Октябрь 25, 2010, 09:13
Наследуешься от QAbstractItemModel и делаешь что хочешь.


Название: Re: Изменение данных внутри QSqlQueryModel (не в базе)
Отправлено: crossly от Октябрь 27, 2010, 16:39
Цитировать
Есть ли пример как это реализовывать правильно (ну или хотябы неправильно)?
посмотреть реализацию QSqlTableModel