diff --git a/kernel/model/attribute_view.go b/kernel/model/attribute_view.go index 43ada55ef..53353ed59 100644 --- a/kernel/model/attribute_view.go +++ b/kernel/model/attribute_view.go @@ -881,6 +881,9 @@ func GetBlockAttributeViewKeys(blockID string) (ret []*BlockAttributeViewKeys) { } if 0 < len(kValues.Values) { + for _, v := range kValues.Values { + sql.FillAttributeViewNilValue(v, v.Type) + } keyValues = append(keyValues, kValues) } else { // 如果没有值,那么就补一个默认值 diff --git a/kernel/sql/av.go b/kernel/sql/av.go index 09c993ed7..e2cc45d6d 100644 --- a/kernel/sql/av.go +++ b/kernel/sql/av.go @@ -257,7 +257,7 @@ func fillAttributeViewBaseValue(baseValue *av.BaseValue, fieldID, itemID string, if nil == baseValue.Value { baseValue.Value = av.GetAttributeViewDefaultValue(baseValue.ID, fieldID, itemID, baseValue.ValueType) } else { - fillAttributeViewNilValue(baseValue.Value, baseValue.ValueType) + FillAttributeViewNilValue(baseValue.Value, baseValue.ValueType) } } @@ -425,7 +425,7 @@ func fillAttributeViewTemplateValue(value *av.Value, item av.Item, attrView *av. return } -func fillAttributeViewNilValue(value *av.Value, typ av.KeyType) { +func FillAttributeViewNilValue(value *av.Value, typ av.KeyType) { value.Type = typ switch typ { case av.KeyTypeText: