У вас есть идеи, примеры, как использовать QTableView
с пользовательским ORM, написанным на Python (например, Web2Py DAL
).
Итак, у меня есть результат запроса и поля, описывающие свойства столбцовв результате:
ID (int) Name (str)
1 Lisa
2 Maria
Я хочу создать класс ResultSetModel
, который можно привязать к QTableView
.У меня может быть много объектов этого класса, каждый со своим запросом - как в QSqlQueryModel
.Но QSqlQueryModel
имеет дело с инфраструктурой SQL в Qt, но у меня есть собственный ORM для работы с базой данных.
Спасибо
ОБНОВЛЕНИЕ:
Предположим, у меня есть таблица с большим количеством строк.Я не хочу просить их всех и держать их в модели.Мне нужна модель, которая работает вместе с QTableView, запрашивая следующие или предыдущие записи, когда пользователь прокручивает представление вверх или вниз.
QAbstractItemModel.fetchMore интересно, но не делает то, что я хочу.
Вы можете увидеть пример Fetch More в examples/itemviews/fetchmore.py
.Когда вы прокручиваете страницу до конца, она запрашивает дополнительную часть данных, но также сохраняет старые записи.И это не делает то же самое, когда вы прокручиваете вверх.
Представьте, что у меня в таблице Персоны несколько миллионов человек.Я хочу запрашивать и хранить в своей модели / памяти только записи, показанные в представлении.
То, чего я пытаюсь достичь, показано здесь: http://www.youtube.com/watch?v=hQlE0rrr7wI
Т.е. после того, как представление отображаетсябазовая модель запрашивает столько строк, сколько необходимо для отображения на экране.При прокрутке вниз / вверх - другие строки запрашиваются из БД постепенно.