我已经使用QSqlRelationalTableModel创建了一个单字段表视图。该表视图中唯一的字段取自具有一长串名称的表(mysql)。当我在逻辑上与查询"like“相关联的字段中输入名称时,创建自动补全的正确方法是什么?
self.model = QtSql.QSqlRelationalTableModel()
self.model.setTable("archlibri")
self.model.setHeaderData(0, QtCore.Qt.Horizontal, "ID")
self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Autore")
self.model.setHeaderData(2, QtCore.Qt.Horizontal, "Titolo")
self.model.setRelation(1, QtSql.QSqlRelation("elAutori", "aID", "aNome"))
self.model.select()
tabella.setModel(self.model)
tabella.setItemDelegate(QtSql.QSqlRelationalDelegate(tabella))塔贝拉是个QTableView。列"Autore“(具有关系委托的列)是我想要在写名字时添加自动完成的位置
发布于 2021-11-27 08:46:08
根据作者字段的类型,您必须实现一个查询,该查询根据用户键入的内容从数据库中选择作者姓名。例如:海明威。查询为select...在哪里..。名称类似于%占位符。返回的值将设置为ui中的author字段。您需要在更改信号数据的情况下执行此操作。
https://stackoverflow.com/questions/13197267
复制相似问题