Не понятное поведение QSqlTableModel
QAbstractListModel, QPSQL, QSqlTableModel
Евгений, добрый день. Всю голову сломал, но так ответа и не нашел. Есть конечно какие-то у меня предположения, но что-то совсем из области фантастики.
В архиве очень простенький пример этой проблемы. А проблема такая.
Создаю простое подключение в БД с драйвером QPSQL все работает и все подключается. Создаю model = new QSqlTqbleModel(this, bd); и пытаюсь представить ее в listView и tableView, но ни там ни там этого не происходит, хотя данные с сервера идут и в qDebug я их вывожу.
Дальше интересней. Коментируем подключение через QPSQL и ставим QSQLITE. Больше ничего не меняем… и все отображается.
Ну и верх моего удивления. Возвращаем все обратно, т.е. QPSQL и делаем через QAbstractListModel – все отображается и работает.
Подскажите, где у меня пробел в голове?
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
- Akiv Doros
- Nov. 11, 2024, 10:58 p.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:50points,
- Rating points-4
- molni99
- Oct. 26, 2024, 8:37 a.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:80points,
- Rating points4
- molni99
- Oct. 26, 2024, 8:29 a.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:20points,
- Rating points-10
День добрый, Андрей.
Вообще, не обязательно передавать базу данных в следующей строке (Там по умолчанию будет подставлено всё, что нужно):
model = new QSqlTableModel(this, db);
В заголовочном файле меня напрягает, что набор директив #define немного различный, хотя это скорее всего и не принципиально. А вот по остальному, нужно смотреть, что вы сделали в приложенном архиве. Я увеличил размер вложений до 500 кБ. Нужно смотреть проект в целом. А вообще, скорее всего какая-то ошибка в инициализации или вообще отсутствие искомых таблиц при первом обращении.
У вас получается Postgresql используется? Довольно сумбурное описание проблемы. Больше похоже на то, что в процессе редактирования где-то была допущена небольшая ошибка. Вроде отсутствия точки с запятой в SQL запросе или что-то ещё подобное.
Вот оно. Чудо))
untitled.zip
Приложенный код должен быть рабочим. Может быть ошибка в самой таблице.