Название: Проблема с SqlRelationalTableModel Отправлено: nata267 от Декабрь 19, 2010, 17:55 У меня возникла такая проблема: есть модель
Код: ingredientsModel = new RecipeIngredientsModel(this); при вставке записей в поле 3 и 4 значения выбирается из таблиц units, ingredients, так вот если это стаые записи которые уже были в этих таблицах то все нормально, а эсли это записи которые я создала при этом запуске программы, то в таблице в этих полях пусто. в чем тут может быть проблема Название: Re: Проблема с SqlRelationalTableModel Отправлено: crossly от Декабрь 19, 2010, 18:15 после вставки выполните select() для
Код: QSqlTableModel * QSqlRelationalTableModel::relationModel ( int column ) const Название: Re: Проблема с SqlRelationalTableModel Отправлено: nata267 от Декабрь 19, 2010, 18:20 после вставки выполните select() для Код: QSqlTableModel * QSqlRelationalTableModel::relationModel ( int column ) const Делаю после вставки ингредиентов или мер: Код: ingredientsModel->relationModel(3)->select(); не помогает, блин Название: Re: Проблема с SqlRelationalTableModel Отправлено: nata267 от Декабрь 21, 2010, 10:44 Самое интересное, что если использовать QListView, а не QTableView, то все нормально, а если QTableView, то работает только после submitAll самой модели QSqlRelationalTableModel, хотя мне не надо отправлять данные в базу пока я их не отредактирую полностью, получается на момент редактирования мне нужно закрывать справочники, чтобы пользователь не мог туда ничего добавлять...
Название: Re: Проблема с SqlRelationalTableModel Отправлено: nata267 от Декабрь 21, 2010, 10:51 тут уже поднималась эта тема http://www.prog.org.ru/topic_13564_0.html (http://www.prog.org.ru/topic_13564_0.html), но видимо решения это проблемы нет(
Название: Re: Проблема с SqlRelationalTableModel Отправлено: crossly от Декабрь 21, 2010, 11:15 сделайте свой делегат
Название: Re: Проблема с SqlRelationalTableModel Отправлено: nata267 от Декабрь 21, 2010, 12:03 Название: Re: Проблема с SqlRelationalTableModel Отправлено: nata267 от Декабрь 22, 2010, 10:31 кроме делегата надо еще переопределить QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const для модели.
а делегат вообщето не понадобился так как у меня табличка закрыта для редактирования, а редактируется из формы. Таким образом пришли от QSqlRelationalTableModel к просто QSqlTableModel и сами из неё сделали свою QSqlRelationalTableModel)) |