crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Qt и реляционная модель
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Гость Дата 30.5.2013, 15:33
  решил так:
int row_count = model_->rowCount();
    QSqlRecord rec  = model_->record();
    rec.setGenerated(0, false);

    if(!model_->insertRecord(row_count, rec))
    {

        return;
    }

    current_index_ = model_->index(row_count, 0);
    view_->setCurrentIndex(current_index_);

    editConnection dlg(model_, &current_index_);
    if(dlg.exec() != QDialog::Accepted)
    {

    }
    else
    {

    }
    view_->setCurrentIndex(current_index_);



Но при добавлении записи в таблицу, в поле таблице(text NOT NULL) вставляются символы '' если пользователь ничего не вводил, как отсечь момент и сделать проверку : если пользователь ничего не ввел - то ему бы тригер базы вернул ошибку и сторка не добавилась?
Гость_Alexey_* Дата 28.5.2013, 16:58
  Есть 2 таблицы:

А1

int: id
text: name
int: id_a2


А2

int: id
text: name


Нужно:
Отрисовать 2 формы: просмотр и добавление/редактирование

с 1-ой все понятно, там мне нужно только поле A1.name(QSqlTableModel использую). из нее и вызываю форму 2.

со 2-ой, проблемы. Передаю в конструктор формы QModelIndex и QSqlTableModel от них и пляшу
Необходимы на данной форме 2-вкладки(QTabWidget):
на первой(QDialog) — A1.name(QLineEdit)
на второй(QDialog) — A2.name(QComboBox)

Скажу сразу:
3 дня убил на QSqlRelationalTableModel+QDataWidgetMapper — не растет кокос!
QDataWidgetMapper не сабмитит!! и в QComboBox криво значения мапит.


Так, вот — хотелось бы по старинке засабмитить QSqlRecord.
Но тут не понятно как корректно в A2.name(QComboBox) выставить значение текущего A1.id_a2???
и потом собирать QSqlRecord.

З.Ы. QSqlRelationalTableModel+QDataWidgetMapper работает только с существующими значениями? А как быть если необходимо строку добавить?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 5.10.2022, 10:57