Python QSqlTableModel setFilter参数太多

Python QSqlTableModel setFilter参数太多,python,pyqt,pyqt5,qsqltablemodel,Python,Pyqt,Pyqt5,Qsqltablemodel,我试图给一个按钮分配一个信号,以便它调用一个函数来过滤和显示tableView上的特定数据。 但当我点击按钮时,它会说: Type error: setFilter(self, str) too many arguments 应用程序崩溃了 分配信号 self.ui.pushButton.clicked.connect(lambda : self.search(self.ui.lineEdit.text())) 但是当search()中除了self之外没有其他参数时,它会工作 self.mo

我试图给一个按钮分配一个信号,以便它调用一个函数来过滤和显示tableView上的特定数据。 但当我点击按钮时,它会说:

Type error: setFilter(self, str) too many arguments
应用程序崩溃了

分配信号

self.ui.pushButton.clicked.connect(lambda : self.search(self.ui.lineEdit.text()))
但是当
search()
中除了
self
之外没有其他参数时,它会工作

self.model.setFilter('name LIKE "John" ')
setFilter()不接受占位符,因此您只需连接:

def search(self,item):
    self.model.setFilter("name LIKE '%{}%'".format(item))
    self.model.select()
def search(self,item):
    self.model.setFilter("name LIKE '%{}%'".format(item))
    self.model.select()