From cf76eccdd7a50589721fb735b8bd35653ad5c385 Mon Sep 17 00:00:00 2001 From: TangBin Date: Mon, 4 Mar 2019 15:38:44 +0800 Subject: [PATCH] private sku query bugfix --- pkg/compute/models/skus.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkg/compute/models/skus.go b/pkg/compute/models/skus.go index e6576b0692..b96d0800c9 100644 --- a/pkg/compute/models/skus.go +++ b/pkg/compute/models/skus.go @@ -605,11 +605,14 @@ func (manager *SServerSkuManager) ListItemFilter(ctx context.Context, q *sqlchem q = q.Equals("cloudregion_id", regionObj.GetId()) } + if public_cloud || len(provider) > 0 { + zoneTable := ZoneManager.Query().SubQuery() + q = q.Join(zoneTable, sqlchemy.Equals(zoneTable.Field("id"), q.Field("zone_id"))) + } + zoneStr := jsonutils.GetAnyString(query, []string{"zone", "zone_id"}) var zoneObj db.IModel if (public_cloud || len(provider) > 0) && len(zoneStr) > 0 { - zoneTable := ZoneManager.Query().SubQuery() - q = q.Join(zoneTable, sqlchemy.Equals(zoneTable.Field("id"), q.Field("zone_id"))) zoneObj, err = ZoneManager.FetchByIdOrName(nil, zoneStr) if err != nil { if err == sql.ErrNoRows {