diff --git a/kernel/av/relation.go b/kernel/av/relation.go index 28a4eb1f3..7d6ccdab9 100644 --- a/kernel/av/relation.go +++ b/kernel/av/relation.go @@ -41,6 +41,9 @@ func GetSrcAvIDs(destAvID string) []string { if nil == srcAvIDs { return nil } + + // 排除自己 + srcAvIDs = gulu.Str.RemoveElem(srcAvIDs, destAvID) return srcAvIDs } diff --git a/kernel/model/attribute_view.go b/kernel/model/attribute_view.go index e99d1bdcb..ce9fa5b1f 100644 --- a/kernel/model/attribute_view.go +++ b/kernel/model/attribute_view.go @@ -2186,6 +2186,11 @@ func removeAttributeViewBlock(srcIDs []string, avID string, tx *Transaction) (er } } + relatedAvIDs := av.GetSrcAvIDs(avID) + for _, relatedAvID := range relatedAvIDs { + util.BroadcastByType("protyle", "refreshAttributeView", 0, "", map[string]interface{}{"id": relatedAvID}) + } + err = av.SaveAttributeView(attrView) return }