mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-18 00:03:05 -04:00
[DBManager] retrieve and store columns not null value when editing table (fix #13089)
This commit is contained in:
parent
9aecf9f236
commit
a2ce73aec0
@ -211,9 +211,8 @@ class TableFieldsModel(SimpleTableModel):
|
|||||||
|
|
||||||
def flags(self, index):
|
def flags(self, index):
|
||||||
flags = SimpleTableModel.flags(self, index)
|
flags = SimpleTableModel.flags(self, index)
|
||||||
if index.column() == 2: # set Null column as checkable
|
if index.column() == 2 and flags & Qt.ItemIsEditable: # set Null column as checkable instead of editable
|
||||||
flags &= ~Qt.ItemIsEditable
|
flags = flags & ~Qt.ItemIsEditable | Qt.ItemIsUserCheckable
|
||||||
flags |= Qt.ItemIsUserCheckable
|
|
||||||
return flags
|
return flags
|
||||||
|
|
||||||
def append(self, fld):
|
def append(self, fld):
|
||||||
@ -222,6 +221,8 @@ class TableFieldsModel(SimpleTableModel):
|
|||||||
row = self.rowCount() - 1
|
row = self.rowCount() - 1
|
||||||
self.setData(self.index(row, 0), fld, Qt.UserRole)
|
self.setData(self.index(row, 0), fld, Qt.UserRole)
|
||||||
self.setData(self.index(row, 1), fld.primaryKey, Qt.UserRole)
|
self.setData(self.index(row, 1), fld.primaryKey, Qt.UserRole)
|
||||||
|
self.setData(self.index(row, 2), None, Qt.DisplayRole)
|
||||||
|
self.setData(self.index(row, 2), Qt.Unchecked if fld.notNull else Qt.Checked, Qt.CheckStateRole)
|
||||||
|
|
||||||
def _getNewObject(self):
|
def _getNewObject(self):
|
||||||
from .plugin import TableField
|
from .plugin import TableField
|
||||||
|
Loading…
x
Reference in New Issue
Block a user