浏览代码

:art: Keep the width when duplicating database table view field https://github.com/siyuan-note/siyuan/issues/11552

Daniel 1 年之前
父节点
当前提交
22c94e9a68
共有 1 个文件被更改,包括 11 次插入0 次删除
  1. 11 0
      kernel/sql/av.go

+ 11 - 0
kernel/sql/av.go

@@ -59,7 +59,18 @@ func RenderAttributeViewTable(attrView *av.AttributeView, view *av.View, query s
 	for _, col := range view.Table.Columns {
 	for _, col := range view.Table.Columns {
 		key, getErr := attrView.GetKey(col.ID)
 		key, getErr := attrView.GetKey(col.ID)
 		if nil != getErr {
 		if nil != getErr {
+			switch view.LayoutType {
+			case av.LayoutTypeTable:
+				for i, column := range view.Table.Columns {
+					if column.ID == col.ID {
+						view.Table.Columns = append(view.Table.Columns[:i], view.Table.Columns[i+1:]...)
+						break
+					}
+				}
+			}
+
 			logging.LogWarnf("get key [%s] failed: %s", col.ID, getErr)
 			logging.LogWarnf("get key [%s] failed: %s", col.ID, getErr)
+			av.SaveAttributeView(attrView)
 			continue
 			continue
 		}
 		}