Я пытаюсь унаследовать QSqlTableModel, чтобы данные отображались в моей таблице так, как мне нужно.
class TableViewModel(QSqlTableModel):
def __init__(self):
super(TableViewModel, self).__init__()
def flags(self, modelIndex):
if not modelIndex.isValid():
return
if modelIndex.column() != 1 and modelIndex.column() != 4:
return Qt.ItemIsEnabled | Qt.ItemIsSelectable
return Qt.ItemIsEditable | Qt.ItemIsEnabled | Qt.ItemIsSelectable
def data(self, modelIndex, role=Qt.DisplayRole):
if not modelIndex.isValid():
return QVariant()
if role != Qt.DisplayRole & role != Qt.EditRole:
return QVariant()
return record.value(modelIndex.column())
С этим кодом я получаю только пустые ячейки. Без функции data () этот код работает отлично, данные, отображаемые в TableView, точно должны быть.
Я просто запутался, получая данные из QSqlTableModel. Где я могу найти его? Или это просто мой звонок не так?
Заранее спасибо.