PDA

View Full Version : QTableView, QSqlTableModel - data disappears



msh
15th November 2008, 00:22
I'm using PyQt. I want to put the rows from my database to table_view1 (QTableView).
The problem is I can't see any rows in table_view1 - the data disappers (some refresh?)
look a at lines 20-22.



model = QtSql.QSqlTableModel()

model.setTable("klienci")

model.setEditStrategy(QtSql.QSqlTableModel.OnManua lSubmit)


model.setHeaderData(0, QtCore.Qt.Horizontal,
QtCore.QVariant(QtCore.QObject.tr(model, "ID")))
model.setHeaderData(1, QtCore.Qt.Horizontal,
QtCore.QVariant(QtCore.QObject.tr(model, "First name")))
model.setHeaderData(2, QtCore.Qt.Horizontal,
QtCore.QVariant(QtCore.QObject.tr(model, "Last name")))


model.select()
self.ui.table_view1.setModel(model)
self.ui.table_view1.setItemDelegate(QtSql.QSqlRela tionalDelegate(self.ui.table_view1))

#that's for testing - when I raise error, I can see the rows from database
#if line below is commented, the data in table_view1 disappers.
#self.ui.table_view1.foo()



What I'm doing wrong? Any suggestions?

janus
15th November 2008, 11:50
Hi,

two ideas:

1. check for errors: model->lastError().text()
2. Remove the line with the Delegate

edit:
no idea about python, but try to use the model on the heap: model = new QSqlTableModel ...