diff --git a/gui/media_file_model.py b/gui/media_file_model.py index e34ad26..e5af2a4 100644 --- a/gui/media_file_model.py +++ b/gui/media_file_model.py @@ -35,10 +35,7 @@ class MediaFileTableModel(QAbstractTableModel): filter_rule += "WHERE " filter_rule += "review is true" print(f"{filter_rule=}") - try: - cursor.execute(f"SELECT id, url, review, should_download, file_name, cloud_link FROM media_file {filter_rule}") - except mariadb.Error as error: - print(error) + cursor.execute(f"SELECT id, url, review, should_download, file_name, cloud_link FROM media_file {filter_rule}") rows = cursor.fetchall() print(len(rows)) if len(rows) > 0: @@ -49,14 +46,13 @@ class MediaFileTableModel(QAbstractTableModel): self.endResetModel() else: self._data = None - try: - self.layoutChanged.emit() - except: - + self.layoutChanged.emit() self.main_window.statusBar.showMessage(f"{len(rows)} Einträge geladen", 3000) def rowCount(self, parent=QModelIndex()): # The length of the outer list. + if self._data is None: + return 0 return len(self._data) def headerData(self, col, orientation, role=Qt.ItemDataRole.DisplayRole): @@ -78,6 +74,8 @@ class MediaFileTableModel(QAbstractTableModel): return str(col+1) def data(self, index, role=Qt.ItemDataRole.DisplayRole): + if self._data is None: + return None value = self._data[index.row()][index.column()] if role == Qt.ItemDataRole.DisplayRole: if isinstance(value, datetime): @@ -101,6 +99,8 @@ class MediaFileTableModel(QAbstractTableModel): def columnCount(self, index=QModelIndex()): # The following takes the first sub-list, and returns # the length (only works if all rows are an equal length) + if self._data is None: + return 5 return len(self._data[0]) def setData(self, index, value, role=Qt.ItemDataRole.EditRole):