Skip to content

Commit a2ce73a

Browse files
committed
[DBManager] retrieve and store columns not null value when editing table (fix #13089)
1 parent 9aecf9f commit a2ce73a

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

python/plugins/db_manager/db_plugins/data_model.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -211,9 +211,8 @@ def headerData(self, section, orientation, role):
211211

212212
def flags(self, index):
213213
flags = SimpleTableModel.flags(self, index)
214-
if index.column() == 2: # set Null column as checkable
215-
flags &= ~Qt.ItemIsEditable
216-
flags |= Qt.ItemIsUserCheckable
214+
if index.column() == 2 and flags & Qt.ItemIsEditable: # set Null column as checkable instead of editable
215+
flags = flags & ~Qt.ItemIsEditable | Qt.ItemIsUserCheckable
217216
return flags
218217

219218
def append(self, fld):
@@ -222,6 +221,8 @@ def append(self, fld):
222221
row = self.rowCount() - 1
223222
self.setData(self.index(row, 0), fld, Qt.UserRole)
224223
self.setData(self.index(row, 1), fld.primaryKey, Qt.UserRole)
224+
self.setData(self.index(row, 2), None, Qt.DisplayRole)
225+
self.setData(self.index(row, 2), Qt.Unchecked if fld.notNull else Qt.Checked, Qt.CheckStateRole)
225226

226227
def _getNewObject(self):
227228
from .plugin import TableField

0 commit comments

Comments
 (0)