2
我QSqlTableModel的有一些表格,讓我們假設這是一個QDataWidgetMapper和QDateEdit值
model->setTable("Person");
而且我也有QDataWidgetMapper其中MAPPS一些小部件(lineedits等),以在適當的模型列。
所以問題在於QDateEdit
元素。
mapper->addMapping(birthEdit, Person_Birthdate);
當我改變birthEdit
(QDateEdit
)的日期值實際上並未在相應的表格改變,因爲它們存儲在不同的格式,我也得到一個錯誤:
"QODBCResult::exec: unable to bind variable: "[Microsoft][ODBC SQL Server Driver]...".
數據庫中的日期存儲在「yyyy-MM-dd」中,而QDateEdit
將日期返回到另一個日期(我想)。據我所知QDataWidgetMapper
使用映射小部件中的USER屬性來獲取/設置值。
我該如何解決我的問題?
的[下頁](http://qtwiki.remdex.info/How_to_map_QDataWidgetMapper_and_QDateEdit,_QDateTimeEdit_?)是空的,根本沒有信息。 我試過第一種方式 - 子類QSqlRelationaDelegate等,它的幫助,謝謝。 你能解釋一下你是什麼意思「擴展QDateEdit並使其處理時間戳數據並轉換爲QDate對象」? – ScienceSE
@ScienceSE:啊,你說得對。我身邊有一些複製/粘貼錯誤,嘿嘿。現在已經修復了,您還可以在第二個解決方案中獲得更多解釋。 – lpapp
謝謝。但我認爲文章中的例子是不完整的,因爲NOTIFY dateChanged信號是作者忘記添加到他的課堂:)無論如何,我已經理解了這個大概的想法。 – ScienceSE