我已经重新实现了QSqlTableModel.select(),以在视图中显示模型返回的所有结果:
def select(self):
self.setTable("videos")
results = QtSql.QSqlTableModel.select(self)
self.setHeaderData(5, QtCore.Qt.Horizontal, "", QtCore.Qt.DisplayRole)
self.setHeaderData(6, QtCore.Qt.Horizontal, "Modification")
self.setHeaderData(9, QtCore.Qt.Horizontal, "Ajout")
while self.canFetchMore():
self.fetchMore()
return results我也想对函数setQuey做同样的事情,所以我尝试了这样的方法:
def setQuery(self, query):
results = QtSql.QSqlTableModel.setQuery(query)
self.select(results)
while self.canFetchMore():
self.fetchMore()
return results但我有个例外:
File "/home/djipey/informatique/python/bibli/model.py", line 23, in setQuery
results = QtSql.QSqlTableModel.setQuery(query)
TypeError: QSqlTableModel.setQuery(QSqlQuery): first argument of unbound method must have type 'QSqlTableModel'你能解释一下为什么我有typeError吗?我不太明白。
发布于 2013-07-26 16:19:55
就像您的重写使用两个参数一样,
def setQuery(self, query):对QtSql.QSqlTableModel.setQuery的调用需要两个参数:
results = QtSql.QSqlTableModel.setQuery(self, query)https://stackoverflow.com/questions/17879013
复制相似问题