QSqlRelationalTableModel с 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 (IOKey). Перед редактированием отображается соответствующее значение ("IOText").

Если я удаляю строку с "setEditStrategy", все работает нормально, но я хочу иметь EditStrategy с "OnManualSubmit".

Спасибо!

1 ответ

Решение

Я решил проблему. В моем исходном коде я использовал подкласс QSqlRelationalTableModel, где я установил выравнивание для некоторых столбцов (и столбца 10 тоже). Когда я использую оригинальный класс QSqlRelationalTableModel, все работает отлично.

Другие вопросы по тегам