diff --git a/go.mod b/go.mod index df1e52a03..c71f149d2 100644 --- a/go.mod +++ b/go.mod @@ -28,3 +28,4 @@ require ( gopkg.in/yaml.v2 v2.2.8 xorm.io/xorm v1.0.2 ) + diff --git a/modules/db/converter.go b/modules/db/converter.go index 1eb5c7588..8965f79bd 100644 --- a/modules/db/converter.go +++ b/modules/db/converter.go @@ -6,6 +6,7 @@ package db import ( "database/sql" + "strings" ) // SetColVarType set the column type. @@ -35,6 +36,8 @@ func SetColVarType(colVar *[]interface{}, i int, typeName string) { // SetResultValue set the result value. func SetResultValue(result *map[string]interface{}, index string, colVar interface{}, typeName string) { + arr := strings.Split(typeName, " ") + typeName = arr[len(arr)-1] dt := DT(typeName) switch { case Contains(dt, BoolTypeList): diff --git a/plugins/admin/modules/table/default.go b/plugins/admin/modules/table/default.go index 685307fdc..b7947f45b 100644 --- a/plugins/admin/modules/table/default.go +++ b/plugins/admin/modules/table/default.go @@ -1123,6 +1123,12 @@ func (tb *DefaultTable) sql() *db.SQL { return db.WithDriverAndConnection(tb.connection, tb.db()) } +// sql is a helper function return db sql. +func (tb *DefaultTable) GetSql() *db.SQL { + return tb.sql() +} + + // sqlObjOrNil is a helper function return db sql obj or nil. func (tb *DefaultTable) sqlObjOrNil() *db.SQL { if tb.connectionDriver != "" && tb.getDataFromDB() { diff --git a/plugins/admin/modules/table/table.go b/plugins/admin/modules/table/table.go index 48784fed6..e1c4da439 100644 --- a/plugins/admin/modules/table/table.go +++ b/plugins/admin/modules/table/table.go @@ -72,6 +72,9 @@ type Table interface { GetOnlyUpdateForm() bool Copy() Table + + GetSql() *db.SQL + } type BaseTable struct {