This commit is contained in:
Jinzhu 2015-02-16 12:04:46 +08:00
parent 5d692a6bf2
commit 1726cebc2e
2 changed files with 21 additions and 7 deletions

View File

@ -8,6 +8,7 @@ import (
type Field struct { type Field struct {
*StructField *StructField
IsBlank bool
Field reflect.Value Field reflect.Value
} }

View File

@ -8,10 +8,15 @@ import (
"time" "time"
) )
type ModelStruct struct {
PrimaryKeyField *StructField
StructFields []*StructField
TableName string
}
type StructField struct { type StructField struct {
Name string Name string
DBName string DBName string
IsBlank bool
IsPrimaryKey bool IsPrimaryKey bool
IsScanner bool IsScanner bool
IsTime bool IsTime bool
@ -19,7 +24,17 @@ type StructField struct {
IsIgnored bool IsIgnored bool
DefaultValue *string DefaultValue *string
SqlTag string SqlTag string
Relationship *relationship Relationship *Relationship
}
type Relationship struct {
Kind string
ForeignType string
ForeignFieldName string
ForeignDBName string
AssociationForeignFieldName string
AssociationForeignDBName string
JoinTable string
} }
func (scope *Scope) GetStructFields() (fields []*StructField) { func (scope *Scope) GetStructFields() (fields []*StructField) {
@ -192,11 +207,9 @@ func (scope *Scope) GetStructFields() (fields []*StructField) {
} }
if field.IsNormal { if field.IsNormal {
typ + " " + additionalType typ + " " + additionalType
}
} else if !field.IsTime { } else if !field.IsTime {
return typ + " " + additionalType return typ + " " + additionalType
} }
}
if len(typ) == 0 { if len(typ) == 0 {
if field.IsPrimaryKey { if field.IsPrimaryKey {