Fix autoUpdateTime or autoCreateTime type
This commit is contained in:
parent
a480bd8545
commit
ab51216097
@ -316,8 +316,27 @@ func ConvertToCreateValues(stmt *gorm.Statement) (values clause.Values) {
|
||||
if field.DefaultValueInterface != nil {
|
||||
values.Values[0][idx] = field.DefaultValueInterface
|
||||
field.Set(stmt.ReflectValue, field.DefaultValueInterface)
|
||||
} else if field.AutoCreateTime > 0 || field.AutoUpdateTime > 0 {
|
||||
field.Set(stmt.ReflectValue, curTime)
|
||||
} else if field.AutoCreateTime > 0 {
|
||||
if field.AutoCreateTime == schema.UnixNanosecond {
|
||||
field.Set(stmt.ReflectValue, curTime.UnixNano())
|
||||
} else if field.AutoCreateTime == schema.UnixMillisecond {
|
||||
field.Set(stmt.ReflectValue, curTime.UnixNano()/1e6)
|
||||
} else if field.AutoCreateTime == schema.UnixSecond {
|
||||
field.Set(stmt.ReflectValue, curTime.Unix())
|
||||
} else {
|
||||
field.Set(stmt.ReflectValue, curTime)
|
||||
}
|
||||
values.Values[0][idx], _ = field.ValueOf(stmt.ReflectValue)
|
||||
} else if field.AutoUpdateTime > 0 {
|
||||
if field.AutoUpdateTime == schema.UnixNanosecond {
|
||||
field.Set(stmt.ReflectValue, curTime.UnixNano())
|
||||
} else if field.AutoUpdateTime == schema.UnixMillisecond {
|
||||
field.Set(stmt.ReflectValue, curTime.UnixNano()/1e6)
|
||||
} else if field.AutoUpdateTime == schema.UnixSecond {
|
||||
field.Set(stmt.ReflectValue, curTime.Unix())
|
||||
} else {
|
||||
field.Set(stmt.ReflectValue, curTime)
|
||||
}
|
||||
values.Values[0][idx], _ = field.ValueOf(stmt.ReflectValue)
|
||||
}
|
||||
} else if field.AutoUpdateTime > 0 {
|
||||
|
@ -210,10 +210,10 @@ func ConvertToAssignments(stmt *gorm.Statement) (set clause.Set) {
|
||||
set = append(set, clause.Assignment{Column: clause.Column{Name: field.DBName}, Value: now.UnixNano()})
|
||||
} else if field.AutoUpdateTime == schema.UnixMillisecond {
|
||||
set = append(set, clause.Assignment{Column: clause.Column{Name: field.DBName}, Value: now.UnixNano() / 1e6})
|
||||
} else if field.GORMDataType == schema.Time {
|
||||
set = append(set, clause.Assignment{Column: clause.Column{Name: field.DBName}, Value: now})
|
||||
} else {
|
||||
} else if field.AutoUpdateTime == schema.UnixSecond {
|
||||
set = append(set, clause.Assignment{Column: clause.Column{Name: field.DBName}, Value: now.Unix()})
|
||||
} else {
|
||||
set = append(set, clause.Assignment{Column: clause.Column{Name: field.DBName}, Value: now})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user