feat: ent select fields.

This commit is contained in:
tx7do
2023-11-06 17:02:55 +08:00
parent da82d442cc
commit 18755155ba
5 changed files with 90 additions and 9 deletions

25
entgo/query/select.go Normal file
View File

@@ -0,0 +1,25 @@
package entgo
import (
"entgo.io/ent/dialect/sql"
"github.com/tx7do/go-utils/stringcase"
)
func BuildFieldSelect(s *sql.Selector, fields []string) {
if len(fields) > 0 {
for i, field := range fields {
fields[i] = stringcase.ToSnakeCase(field)
}
s.Select(fields...)
}
}
func BuildFieldSelector(fields []string) (error, func(s *sql.Selector)) {
if len(fields) > 0 {
return nil, func(s *sql.Selector) {
BuildFieldSelect(s, fields)
}
} else {
return nil, nil
}
}