Ошибка 'Ui_Form' object has no attribute 'BeginResetModel'

Заменил Таблицу в Qt Designer на QLabel, прописал все и заменил со старого кода, метод reset() начал выводить ошибку.

...

def insert_varible_into_table(Inventory, Serial, Model, Owner, Location): #добавление данных в SQLite
    sqlite_insert_with_param = """INSERT INTO DeviceList
                            (Inv, Serial, Model, Owner, Location)
                            VALUES (?, ?, ?, ?, ?);"""
    data_tuple = (Inventory, Serial, Model, Owner, Location)
    cursor.execute(sqlite_insert_with_param, data_tuple)
    sqlite_connection.commit()
    print("Переменные Python успешно вставлены в таблицу DeviceList")

def LoadDeviseList():
    cursor.execute("SELECT * FROM DeviceList")
    data = cursor.fetchall()
    return data


cursor.execute("SELECT * FROM RFID")
RFID_list = cursor.fetchall()
DeviceList = LoadDeviseList()


def insert_varible_into_table_RFID(Inventory, RFID): #добавление данных в SQLit
    if Inventory in str(RFID_list):
        cursor.execute("""DELETE FROM RFID WHERE inv = ?""", Inventory)
        sqlite_connection.commit()
    sqlite_insert_with_param = """INSERT INTO RFID
                            (Inv, RFID)
                            VALUES (?, ?);"""
    data_tuple = (Inventory, RFID)
    cursor.execute(sqlite_insert_with_param, data_tuple)
    sqlite_connection.commit()
    print("Переменные Python успешно вставлены в таблицу RFID")

def UpdateDevices(): 
        cursor.execute("DELETE FROM DeviceList")
        excel_data_df = pd.read_excel(ExcelList, sheet_name='Page 1')
        excel_list = json.loads(excel_data_df.to_json(orient='records'))
        for item in excel_list:
            if str('DECOMISSIONED') != str(item['Fixed Asset Number']):
                insert_varible_into_table(item['Fixed Asset Number'], item['Serial number'], item['Display name'], item['Assigned to'], item['Location'])
        print('Ready')

def LoadDeviseList():
    cursor.execute("SELECT * FROM DeviceList")
    data = cursor.fetchall()
    return data


class AddNewDevice(QThread):
    def __init__(self, mainwindow, parant=None):
        super().__init__()
        self.mainwindow = mainwindow
        inv = self.mainwindow.lineEdit.text()
        rfidnum = (self.mainwindow.RFID_Label.text()).partition(';')[0]
        insert_varible_into_table_RFID(inv, rfidnum)

test_rfid = ''

class ProgressBarThread(QThread):
    def __init__(self, mainwindow, parant=None):
        super().__init__()
        self.mainwindow = mainwindow
    def run(self):
        global test_rfid
        current_rfid = ''
        while True:
            self.mainwindow.pushButton_2.setEnabled(False)
            with open(textbase) as file:
                RFID_original = file.readlines()[-1]
                RFID = RFID_original.partition(';')[0]
            if current_rfid != RFID:
                self.mainwindow.RFID_Label.setText(RFID_original)
                if RFID in str(RFID_list):
                    *res1, = filter(lambda x: x[1] == RFID, RFID_list)
                    res1 = np.array(res1)
                    self.mainwindow.Device_Label.setText(f"<html><head/><body><p align=\"center\"><span style=\" font-size:20pt; font-weight:600;\">{str(res1[0][0])}</span></p></body></html>")
                    current_rfid = RFID
                    for item in DeviceList:
                        if str(res1[0][0]) == str(item[0]):
                            self.mainwindow.BeginResetModel()
                            self.mainwindow.label_5.setText(str(item[0]))
                            self.mainwindow.label_3.setText(str(item[0]))
                            self.mainwindow.label_7.setText(str(item[0]))
                            self.mainwindow.label_10.setText(str(item[0]))
                            self.mainwindow.label_11.setText(str(item[0]))
                            self.mainwindow.endResetModel()
                else:
                    test_rfid = RFID
                    self.mainwindow.pushButton_2.setEnabled(True)
            time.sleep(1)

 def UpdateList():
             n = 0
             for i in DeviceList:
                 self.tableWidget.setRowCount(len(DeviceList))
                 p = 0
                 for j in i:
                     self.tableWidget.setItem(n, p, QtWidgets.QTableWidgetItem(str(j)))
                     p += 1
                 n += 1
        UpdateList()
        

        self.tableWidget.setSortingEnabled(__sortingEnabled)
        self.pushButton_2.setText(_translate("Form", "Добавить"))
        self.pushButton_4.setText(_translate("Form", "Обновить данные"))
        self.pushButton.clicked.connect(self.launch_progress_bar_filling)
        self.pushButton_4.clicked.connect(lambda: (UpdateDevices(), UpdateList()))
        #self.pushButton_2.clicked.connect(lambda: insert_varible_into_table_RFID(self.lineEdit.text(), (self.RFID_Label.text()).partition(';')[0]))
        self.pushButton_2.clicked.connect(lambda: insert_varible_into_table_RFID(self.lineEdit.text(), test_rfid))
        self.ProgressbarThread_instance = ProgressBarThread(mainwindow=self)
        

    def launch_progress_bar_filling(self):
        self.pushButton.setEnabled(False)
        self.ProgressbarThread_instance.start()
    



if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QWidget()
    ui = Ui_Form()
    ui.setupUi(Form)
    Form.show()
    sys.exit(app.exec_())

cursor.close()
if sqlite_connection:
    sqlite_connection.close()
    print("Соединение с SQLite закрыто")

После долгих мук, закомментировал строки с reset, приложение начало запускаться, но после запуска перестала работать кнопка для добавления данных с RFID меток

#self.mainwindow.BeginResetModel()
                            self.mainwindow.label_5.setText(str(item[0]))
                            self.mainwindow.label_3.setText(str(item[0]))
                            self.mainwindow.label_7.setText(str(item[0]))
                            self.mainwindow.label_10.setText(str(item[0]))
                            self.mainwindow.label_11.setText(str(item[0]))
                            #self.mainwindow.endResetModel()

Хочу чтобы после каждой новой добавленной метки обновлялись данные в левой таблице. Помогите разобраться с этой проблемой.


Ответы (0 шт):