QDataWidgetMapper & New Record, Add/Del Record with QDataWidgetMapper |
Здравствуйте, гость ( Вход | Регистрация )
QDataWidgetMapper & New Record, Add/Del Record with QDataWidgetMapper |
JohnZ |
14.7.2015, 11:04
Сообщение
#1
|
Участник Группа: Участник Сообщений: 139 Регистрация: 19.7.2014 Пользователь №: 4190 Спасибо сказали: 10 раз(а) Репутация: 0 |
Помогите плз решить такую проблему ...
Имеется динамический диалог, в котором произведено опять-же динамическое связывание полей и записи с пом-ю QDataWidgetMapper. () Используемая модель, - QTableView. Для случая редактирования записи, проблем нет, вызывается Dialog->exec() и далее в зависимости от рез-та сохраняем запись ( dataMapper->submit() ). А как быть в случае добавления записи ? Т.е. нужно очистить диалог, дать возможность юзверю ввести свои данные, и затем добавить запись. Дело в том, что кнопка Insert может быть нажата на _любой_ записи в списке (QTableView), и при смапированных полях, может пострадать "ни в чём не виновная" запись Делать очистку dataMapper->clearMapping() тоже не вариант, т.к. в след-й раз чтобы показать этот-же диалог на редактирование, нужно будет перестраивать кроме этого диалога (и мапирования) все возможные связанные (child) диалоги. ВотЪ, объяснил как смог. Помогите плз кто в курсе проблемы. В принципе более интерисует алгоритм решения проблемы, нежели код. Если нужен код мапирования и запуска диалога, - выложу, но как я уже сказал, он тривиален, всё взято из примеров. И попутно, вопрос по отображению даты в QTableView. В примере sqlbrowser, год отображается 4-мя цифрами, а у меня почему-то 2-мя. Пересмотрел весь пример, этой установки не нашёл. В чём трабл ? Заранее благодарю за помощь. |
|
|
lanz |
15.7.2015, 13:57
Сообщение
#2
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Цитата "Уговорил" я мапера Это хорошо Просто одна мысль: Рассмотрите такой вариант развития событий. 1. Пользователь вводит данные полчаса 2. Прежде чем он успел нажать OK, выключается свет. В случае использования транзакций, в журнале БД могут остатся данные и можно попробовать их спасти. В случае когда вставка не происходит, данные можно тоже временно куда то сохранить, но зачем дублировать функционал БД. Посмотрел, не нашел ничего про даты, может в Qt5 другой пример? (или я вижу фигу ) (Да, смотрел здесь https://github.com/qtproject/qtbase/tree/de...sql/sqlbrowser) |
|
|
Текстовая версия | Сейчас: 22.11.2024, 12:58 |