<div style=""><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;">The sample code as following </div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div><div style=""><span style="background-color: rgb(255, 255, 255);">self.tableView.setModel(self.sqlTableModel)</span></div><div style=""><span style="background-color: rgb(255, 255, 255);">self.sqlTableModel.dataChanged.connect(self.onDataChanged)</span></div><div style=""><br></div><div style=""><div><span style="background-color: rgb(255, 255, 255);">@pyqtSlot(QModelIndex, QModelIndex)  # ,QVector:name 'QVector' is not defined</span></div><div><span style="background-color: rgb(255, 255, 255);">    def onDataChanged(self):</span></div><div><span style="background-color: rgb(255, 255, 255);">        print('onDataChanged--------')</span></div></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;">each time when I edit a cell in the table view, the QAbstractItemModel::dataChanged() was triggered two times , I guess my decorator for QAbstractItemModel::dataChanged() may be wrong , so what's the right decorator for it ?</div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div></div><!-- jy5ContentSuffix --><br><br><span title="neteasefooter"><p> </p></span>