From ae54b3edc08ad86a1868dbfe13731aa42914e1aa Mon Sep 17 00:00:00 2001 From: Daniel <845765@qq.com> Date: Thu, 14 Aug 2025 15:50:18 +0800 Subject: [PATCH] :art: Improve av https://github.com/siyuan-note/siyuan/issues/15572 --- kernel/model/attribute_view.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/kernel/model/attribute_view.go b/kernel/model/attribute_view.go index e1280793d..1de2c21d2 100644 --- a/kernel/model/attribute_view.go +++ b/kernel/model/attribute_view.go @@ -4724,6 +4724,12 @@ func updateAttributeViewColumnOptions(operation *Operation) (err error) { return } + optionSorts := map[string]int{} + for i, opt := range options { + optionSorts[opt.Name] = i + } + + addNew := false selectKey, _ := attrView.GetKey(operation.ID) if nil == selectKey { return @@ -4744,9 +4750,16 @@ func updateAttributeViewColumnOptions(operation *Operation) (err error) { Color: opt.Color, Desc: opt.Desc, }) + addNew = true } } + if !addNew { + sort.SliceStable(selectKey.Options, func(i, j int) bool { + return optionSorts[selectKey.Options[i].Name] < optionSorts[selectKey.Options[j].Name] + }) + } + regenAttrViewGroups(attrView, operation.ID) err = av.SaveAttributeView(attrView) return