diff --git a/kernel/av/av.go b/kernel/av/av.go index d7abf877b..7198d8966 100644 --- a/kernel/av/av.go +++ b/kernel/av/av.go @@ -169,16 +169,18 @@ type Viewable interface { GetID() string } -func NewAttributeView(id string) *AttributeView { +func NewAttributeView(id string) (ret *AttributeView) { view := NewView() - - return &AttributeView{ + key := NewKey("Block", KeyTypeBlock) + ret = &AttributeView{ Spec: 0, ID: id, - KeyValues: []*KeyValues{{Key: NewKey("Name", KeyTypeBlock)}}, + KeyValues: []*KeyValues{{Key: key}}, CurrentViewID: view.ID, Views: []*View{view}, } + view.Table.Columns = []*ViewTableColumn{{ID: key.ID}} + return } func ParseAttributeView(avID string) (ret *AttributeView, err error) { @@ -199,12 +201,6 @@ func ParseAttributeView(avID string) (ret *AttributeView, err error) { logging.LogErrorf("unmarshal attribute view [%s] failed: %s", avID, err) return } - - if 1 > len(ret.Views) { - view := NewView() - ret.CurrentViewID = view.ID - ret.Views = []*View{view} - } return }