forked from mirror/gorm
Fix tests for Scanner
This commit is contained in:
parent
6271cf0e55
commit
c6b1669c6a
|
@ -9,8 +9,8 @@ type BasePost struct {
|
|||
}
|
||||
|
||||
type HNPost struct {
|
||||
BasePost `gorm:"embedded"`
|
||||
Upvotes int32
|
||||
BasePost
|
||||
Upvotes int32
|
||||
}
|
||||
|
||||
type EngadgetPost struct {
|
||||
|
|
7
scope.go
7
scope.go
|
@ -338,16 +338,15 @@ func (scope *Scope) fieldFromStruct(fieldStruct reflect.StructField) []*Field {
|
|||
field.IsNormal = true
|
||||
}
|
||||
case reflect.Struct:
|
||||
embedded := settings["EMBEDDED"]
|
||||
if embedded != "" {
|
||||
if field.IsTime() || field.IsScanner() {
|
||||
field.IsNormal = true
|
||||
} else if embedded := settings["EMBEDDED"]; strings.ToUpper(embedded) == "EMBEDDED" || (embedded == "" && fieldStruct.Anonymous) {
|
||||
var fields []*Field
|
||||
for _, field := range scope.New(field.Field.Addr().Interface()).Fields() {
|
||||
field.DBName = field.DBName
|
||||
fields = append(fields, field)
|
||||
}
|
||||
return fields
|
||||
} else if field.IsTime() || field.IsScanner() {
|
||||
field.IsNormal = true
|
||||
} else {
|
||||
if foreignKey == "" && scope.HasColumn(field.Name+"Id") {
|
||||
field.Relationship = &relationship{ForeignKey: field.Name + "Id", Kind: "belongs_to"}
|
||||
|
|
|
@ -26,7 +26,7 @@ type User struct {
|
|||
Latitude float64
|
||||
Languages []Language `gorm:"many2many:user_languages;"`
|
||||
CompanyId int64
|
||||
Company
|
||||
Company Company
|
||||
Role
|
||||
PasswordHash []byte
|
||||
IgnoreMe int64 `sql:"-"`
|
||||
|
|
Loading…
Reference in New Issue