Add DefaultTime type for autoUpdateTime and autoCreateTime
This commit is contained in:
parent
ab51216097
commit
585e63625d
@ -233,10 +233,10 @@ func ConvertToAssignments(stmt *gorm.Statement) (set clause.Set) {
|
||||
value = stmt.DB.NowFunc().UnixNano()
|
||||
} else if field.AutoUpdateTime == schema.UnixMillisecond {
|
||||
value = stmt.DB.NowFunc().UnixNano() / 1e6
|
||||
} else if field.GORMDataType == schema.Time {
|
||||
value = stmt.DB.NowFunc()
|
||||
} else {
|
||||
} else if field.AutoUpdateTime == schema.UnixSecond {
|
||||
value = stmt.DB.NowFunc().Unix()
|
||||
} else {
|
||||
value = stmt.DB.NowFunc()
|
||||
}
|
||||
isZero = false
|
||||
}
|
||||
|
@ -24,6 +24,7 @@ const (
|
||||
UnixSecond TimeType = 1
|
||||
UnixMillisecond TimeType = 2
|
||||
UnixNanosecond TimeType = 3
|
||||
DefaultTime TimeType = 4 //DefaultTime is time.Time
|
||||
)
|
||||
|
||||
const (
|
||||
@ -255,8 +256,10 @@ func (schema *Schema) ParseField(fieldStruct reflect.StructField) *Field {
|
||||
field.AutoCreateTime = UnixNanosecond
|
||||
} else if strings.ToUpper(v) == "MILLI" {
|
||||
field.AutoCreateTime = UnixMillisecond
|
||||
} else {
|
||||
} else if strings.ToUpper(v) == "UNIX" {
|
||||
field.AutoCreateTime = UnixSecond
|
||||
} else {
|
||||
field.AutoCreateTime = DefaultTime
|
||||
}
|
||||
}
|
||||
|
||||
@ -265,8 +268,10 @@ func (schema *Schema) ParseField(fieldStruct reflect.StructField) *Field {
|
||||
field.AutoUpdateTime = UnixNanosecond
|
||||
} else if strings.ToUpper(v) == "MILLI" {
|
||||
field.AutoUpdateTime = UnixMillisecond
|
||||
} else {
|
||||
} else if strings.ToUpper(v) == "UNIX" {
|
||||
field.AutoUpdateTime = UnixSecond
|
||||
} else {
|
||||
field.AutoUpdateTime = DefaultTime
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user