cloudcommon: virtualresource: optimize list with --field specified

No functional change
This commit is contained in:
Yousong Zhou
2018-09-13 02:06:12 +00:00
parent 7c3dd189ba
commit 2ff04e3d97
+4 -6
View File
@@ -314,10 +314,11 @@ func query2List(manager IModelManager, ctx context.Context, userCred mcclient.To
if err != nil {
return nil, err
}
fieldFilter := jsonutils.GetQueryStringArray(query, "field")
listF := listFields(manager, userCred)
if len(fieldFilter) > 0 && userCred.IsSystemAdmin() { // only sysadmin can extend list Fields
listF = append(listF, fieldFilter...)
fieldFilter := jsonutils.GetQueryStringArray(query, "field")
if len(fieldFilter) > 0 && userCred.IsSystemAdmin() {
// only sysadmin can specify list Fields
listF = fieldFilter
}
showDetails := false
showDetailsJson, _ := query.Get("details")
@@ -356,9 +357,6 @@ func query2List(manager IModelManager, ctx context.Context, userCred mcclient.To
}
jsonDict = getModelExtraDetails(item, ctx, jsonDict)
}
if len(fieldFilter) > 0 {
jsonDict = jsonDict.CopyIncludes(fieldFilter...)
}
results = append(results, jsonDict)
}
return results, nil