gorm/table_and_query.go
Raul-Mircea 7f7826a867 Fix
2020-01-27 14:37:31 +01:00

32 lines
703 B
Go

package gorm
import (
"fmt"
"strings"
)
// TableAndQuery returns the table name and the query already formatted as a string
func (scope *Scope) TableAndQuery() (string, string) {
scope.InstanceSet("skip_bindvar", true)
//qs := LogFormatter("sql", "q", time.Duration(1), scope.SQL, scope.SQLVars, int64(1))
//t, q := scope.TableName(), qs[3].(string)
if scope.SQL == "" {
fmt.Println("### HIT ###")
scope.prepareQuerySQL()
}
fmt.Println("#####", scope.SQL)
t, q := scope.TableName(), scope.SQL
if t == "" {
qsplit := strings.Fields(strings.ToLower(q))
for i := range qsplit {
if qsplit[i] == "from" && i < len(qsplit)-2 {
t = qsplit[i+1]
break
}
}
}
return t, q
}