From 7d1d1d1d3759474e104758ab29cb433f961ce2c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E8=BD=A9?= Date: Wed, 15 Aug 2018 21:38:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dcheck=20create=20data=20?= =?UTF-8?q?=E4=BD=BF=E7=94=A8keyword=E8=80=8C=E4=B8=8D=E6=98=AFkeywordplur?= =?UTF-8?q?al?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/cloudcommon/db/db_dispatcher.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkg/cloudcommon/db/db_dispatcher.go b/pkg/cloudcommon/db/db_dispatcher.go index 4a661bbd77..8b4179f50d 100644 --- a/pkg/cloudcommon/db/db_dispatcher.go +++ b/pkg/cloudcommon/db/db_dispatcher.go @@ -841,7 +841,12 @@ func (dispatcher *DBModelDispatcher) PerformClassAction(ctx context.Context, act managerValue := reflect.ValueOf(dispatcher.modelManager) if action == "check-create-data" { - return dispatcher.modelManager.ValidateCreateData(ctx, userCred, ownerProjId, query, data.(*jsonutils.JSONDict)) + manager := dispatcher.modelManager + if body, err := data.(*jsonutils.JSONDict).Get(manager.Keyword()); err != nil { + return nil, httperrors.NewGeneralError(err) + } else { + return manager.ValidateCreateData(ctx, userCred, ownerProjId, query, body.(*jsonutils.JSONDict)) + } } return objectPerformAction(dispatcher, managerValue, ctx, userCred, action, query, data) }