Russian Qt Forum
Ноябрь 23, 2024, 12:07 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QSqlRelationalTableModel проблемка с несуществующими ключами  (Прочитано 2642 раз)
SABROG
Гость
« : Апрель 02, 2007, 11:13 »

Есть у меня задумка, хочу сделать вкладку с QTableView, где каждый столбец - параметры программы, которые храняться в таблице, в ней есть колонки с ключами, которые ссылаются на данные в другой таблице (relationship). Я хочу пользователю предоставить возможность выбора или не выбора некоторых параметров из комбобокса. Для этого я использовал QTable View + QSqlRelationalTableModel + QSqlRelationalDelegate. Таблицы откуда берутся данные для комбобоксика по сути копии таблиц на сервере, сделано для уменьшения нагрузки на сервер и решения проблем с задержками при запросах.
Эти таблицы могут меняться, некоторые записи удаляться. В итоге в моей основной таблице могут существовать поля с ключами, которые уже не существуют. И тут возникает проблема, дело в том, что QSqlRelationalTableModel нифига не показывает такие строки считая их неверными. Но мне то надо дать пользователю возможно выбрать любое другое поле взамен несуществующего. Есть какая-нибудь возможность заставить эту модель показывать все строки ? Или опять придется изобретать велосипед ?

В общем думаю отказаться от этой модели, увидел такую запись в исходном коде QtSqlRelationaDelegate где идет выбор итема комбика по тексту:

Код:

combo->setCurrentIndex(combo->findText(sqlModel->data(index).toString()));


Для меня не приемлимо, я все-таки придерживаюсь того, что итемы с одинаковым именем могут иметь разные ключи в базе. Придется свой делегат делать на основе QStandartItemModel
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 20.