QSqlRelationalTableModel 与 OnManualSubmit

QSqlRelationalTableModel with OnManualSubmit

我这样设置视图的模型:

model = QSqlRelationalTableModel()
model.setEditStrategy(QSqlTableModel.OnManualSubmit)
model.setTable("VoucherPos")
model.setFilter("VoucherKey='" + str(parent_id) + "'")

model.setRelation(10, QSqlRelation("IO", "IOKey", "IOText"))

self.tblSubTable.setItemDelegate(QSqlRelationalDelegate())
model.select()
self.tblSubTable.setModel(model)

但是在表格视图中编辑第 10 列后,将显示 id-value (IOKey)。编辑前显示的是正确的相关值 ("IOText")。

如果我删除带有 "setEditStrategy" 的行,一切正常,但我想要一个带有 "OnManualSubmit" 的 EditStrategy。

谢谢!

我解决了这个问题。在我的原始代码中,我使用了一个 subclassed QSqlRelationalTableModel,我在其中设置了一些列(以及第 10 列)的对齐方式。当我使用原始 QSqlRelationalTableModel-class 一切正常时。