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()
|
value = stmt.DB.NowFunc().UnixNano()
|
||||||
} else if field.AutoUpdateTime == schema.UnixMillisecond {
|
} else if field.AutoUpdateTime == schema.UnixMillisecond {
|
||||||
value = stmt.DB.NowFunc().UnixNano() / 1e6
|
value = stmt.DB.NowFunc().UnixNano() / 1e6
|
||||||
} else if field.GORMDataType == schema.Time {
|
} else if field.AutoUpdateTime == schema.UnixSecond {
|
||||||
value = stmt.DB.NowFunc()
|
|
||||||
} else {
|
|
||||||
value = stmt.DB.NowFunc().Unix()
|
value = stmt.DB.NowFunc().Unix()
|
||||||
|
} else {
|
||||||
|
value = stmt.DB.NowFunc()
|
||||||
}
|
}
|
||||||
isZero = false
|
isZero = false
|
||||||
}
|
}
|
||||||
|
@ -24,6 +24,7 @@ const (
|
|||||||
UnixSecond TimeType = 1
|
UnixSecond TimeType = 1
|
||||||
UnixMillisecond TimeType = 2
|
UnixMillisecond TimeType = 2
|
||||||
UnixNanosecond TimeType = 3
|
UnixNanosecond TimeType = 3
|
||||||
|
DefaultTime TimeType = 4 //DefaultTime is time.Time
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@ -255,8 +256,10 @@ func (schema *Schema) ParseField(fieldStruct reflect.StructField) *Field {
|
|||||||
field.AutoCreateTime = UnixNanosecond
|
field.AutoCreateTime = UnixNanosecond
|
||||||
} else if strings.ToUpper(v) == "MILLI" {
|
} else if strings.ToUpper(v) == "MILLI" {
|
||||||
field.AutoCreateTime = UnixMillisecond
|
field.AutoCreateTime = UnixMillisecond
|
||||||
} else {
|
} else if strings.ToUpper(v) == "UNIX" {
|
||||||
field.AutoCreateTime = UnixSecond
|
field.AutoCreateTime = UnixSecond
|
||||||
|
} else {
|
||||||
|
field.AutoCreateTime = DefaultTime
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -265,8 +268,10 @@ func (schema *Schema) ParseField(fieldStruct reflect.StructField) *Field {
|
|||||||
field.AutoUpdateTime = UnixNanosecond
|
field.AutoUpdateTime = UnixNanosecond
|
||||||
} else if strings.ToUpper(v) == "MILLI" {
|
} else if strings.ToUpper(v) == "MILLI" {
|
||||||
field.AutoUpdateTime = UnixMillisecond
|
field.AutoUpdateTime = UnixMillisecond
|
||||||
} else {
|
} else if strings.ToUpper(v) == "UNIX" {
|
||||||
field.AutoUpdateTime = UnixSecond
|
field.AutoUpdateTime = UnixSecond
|
||||||
|
} else {
|
||||||
|
field.AutoUpdateTime = DefaultTime
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user