如何在QT QSqlRelationalTableModel中显示表关系sql表?

时间:2015-01-05 15:49:27

标签: python multithreading user-interface pyqt4 qsqltablemodel

我正在尝试使用QT的QSql Relational TableModel。我是Pyqt的新手,并且sql表关系不显示我的数据库,为什么呢?我有一个数据库的db文件,该数据库在同一目录中有关系表。 http://pyqt.sourceforge.net/Docs/PyQt4/qtsql.html

from PyQt4.QtGui import * 
from PyQt4.QtSql import * 
from PyQt4.QtCore import * 

class Window(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):

        db = QSqlDatabase.addDatabase('QSQLITE')
        db.setDatabaseName('Example.db')
        if db.open():
            return True
        else:
            print(db.lastError().text())
            return False

        model = QSqlRelationalTableModel('Example.db')
        model.setTable("Product")
        model.select()
        model.setHeaderData(0, Qt.Horizontal, 'ProductID')

        view = QTableView(self)
        view.setModel(model)

1 个答案:

答案 0 :(得分:1)

您在设置模型和视图之前return initUI if db.open(): return True else: print(db.lastError().text()) return False ,因此他们未执行:

{{1}}