Название: Вопрос по SqlRelationalTableModel Отправлено: nata267 от Декабрь 16, 2010, 16:46 Я использую SqlRelationalTableModel+QTableView. По кнопке "добавить" формы у меня такой слот срабатывает:
Код: int row = model->rowCount(); строки добавляются но пустые, почему??? мне не надо сразу в базу заносить и я не вызываю Код: model->submitAll(); Название: Re: Вопрос по SqlRelationalTableModel Отправлено: crossly от Декабрь 16, 2010, 16:59 DDL для таблиц покажите
Название: Re: Вопрос по SqlRelationalTableModel Отправлено: nata267 от Декабрь 16, 2010, 18:44 CREATE TABLE `recipes_ingredients` ("
"`id` INTEGER PRIMARY KEY AUTOINCREMENT," "`recipe_id` integer default NULL," "`quantity` integer default NULL," "`unit_id` integer default NULL," "`ingredient_id` integer default NULL" "); Название: Re: Вопрос по SqlRelationalTableModel Отправлено: crossly от Декабрь 16, 2010, 19:26 а что означает
Цитировать строки добавляются но пустые, почему??? ? взглянуть можно? Название: Re: Вопрос по SqlRelationalTableModel Отправлено: lit-uriy от Декабрь 16, 2010, 19:49 >>мне не надо сразу в базу заносить и я не вызываю
а политику правильно установил? Название: Re: Вопрос по SqlRelationalTableModel Отправлено: nata267 от Декабрь 17, 2010, 09:27 model->setEditStrategy(QSqlTableModel::OnManualSubmit);
и когда в таблице пытаюсь редактировать то же самое - ячейки после редактирования пустые становятся Название: Re: Вопрос по SqlRelationalTableModel Отправлено: browncoat от Декабрь 17, 2010, 09:42 Столбец id это же AUTOINCREMENT, а Вы его значения вручную задаете?
И select() же не вносит данные в БД ( http://www.doc.crossplatform.ru/qt/4.7.x/qsqltablemodel.html#select ). Название: Re: Вопрос по SqlRelationalTableModel Отправлено: nata267 от Декабрь 17, 2010, 09:43 спасибо, я нашла косяк, он был вот в чем:
Код: class RecipeIngredientsModel : public QSqlRelationalTableModel { QVariant value =QSqlQueryModel::data(index, role); а нужно QVariant value =QSqlRelationalTableModel::data(index, role); Название: Re: Вопрос по SqlRelationalTableModel Отправлено: nata267 от Декабрь 17, 2010, 10:40 теперь другие косяки появились:
1/ при удалении строк они с экрана не удаляются а только отмечаются ! 2/ при добавлении вместо номера строки * скажите, это возможно исправить?? Название: Re: Вопрос по SqlRelationalTableModel Отправлено: nata267 от Декабрь 17, 2010, 11:34 удаленную строку можно скрыть
view->setRowHidden(row, true); а от * наверно никуда не дется Название: Re: Вопрос по SqlRelationalTableModel Отправлено: browncoat от Декабрь 22, 2010, 09:51 а от * наверно никуда не дется Значения этого столбца можно изменить через setHeaderData(), установив ориентацию Qt::Vertical.Название: Re: Вопрос по SqlRelationalTableModel Отправлено: nata267 от Декабрь 22, 2010, 10:28 а от * наверно никуда не дется Значения этого столбца можно изменить через setHeaderData(), установив ориентацию Qt::Vertical.пробовала, не помогло, я просто скрываю: m_ui.tableView->verticalHeader()->hide(); |