improve code
This commit is contained in:
parent
940afb2af3
commit
4a4f4300fe
|
@ -246,12 +246,12 @@ func (parser *Parser) parseField(table *schemas.Table, field reflect.StructField
|
||||||
tag = field.Tag
|
tag = field.Tag
|
||||||
ormTagStr = strings.TrimSpace(tag.Get(parser.identifier))
|
ormTagStr = strings.TrimSpace(tag.Get(parser.identifier))
|
||||||
)
|
)
|
||||||
if ormTagStr == "" {
|
|
||||||
return parser.parseFieldWithNoTag(field, fieldValue)
|
|
||||||
}
|
|
||||||
if ormTagStr == "-" {
|
if ormTagStr == "-" {
|
||||||
return nil, ErrIgnoreField
|
return nil, ErrIgnoreField
|
||||||
}
|
}
|
||||||
|
if ormTagStr == "" {
|
||||||
|
return parser.parseFieldWithNoTag(field, fieldValue)
|
||||||
|
}
|
||||||
tags, err := splitTag(ormTagStr)
|
tags, err := splitTag(ormTagStr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -259,6 +259,13 @@ func (parser *Parser) parseField(table *schemas.Table, field reflect.StructField
|
||||||
return parser.parseFieldWithTags(table, field, fieldValue, tags)
|
return parser.parseFieldWithTags(table, field, fieldValue, tags)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func isNotTitle(n string) bool {
|
||||||
|
for _, c := range n {
|
||||||
|
return unicode.IsLower(c)
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
// Parse parses a struct as a table information
|
// Parse parses a struct as a table information
|
||||||
func (parser *Parser) Parse(v reflect.Value) (*schemas.Table, error) {
|
func (parser *Parser) Parse(v reflect.Value) (*schemas.Table, error) {
|
||||||
t := v.Type()
|
t := v.Type()
|
||||||
|
@ -275,14 +282,7 @@ func (parser *Parser) Parse(v reflect.Value) (*schemas.Table, error) {
|
||||||
table.Name = names.GetTableName(parser.tableMapper, v)
|
table.Name = names.GetTableName(parser.tableMapper, v)
|
||||||
|
|
||||||
for i := 0; i < t.NumField(); i++ {
|
for i := 0; i < t.NumField(); i++ {
|
||||||
var isUnexportField bool
|
if isNotTitle(t.Field(i).Name) {
|
||||||
for _, c := range t.Field(i).Name {
|
|
||||||
if unicode.IsLower(c) {
|
|
||||||
isUnexportField = true
|
|
||||||
}
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if isUnexportField {
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue