Merge a632dd34b670ec5c5c9c2b43e4bd46b54c9f34e0 into 38f96c65140f00f0b15efc495a487cfd5db510b8

This commit is contained in:
William 2018-02-09 13:59:59 +00:00 committed by GitHub
commit 5014bb2487
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 9 additions and 6 deletions

View File

@ -31,17 +31,17 @@ func beforeCreateCallback(scope *Scope) {
// updateTimeStampForCreateCallback will set `CreatedAt`, `UpdatedAt` when creating // updateTimeStampForCreateCallback will set `CreatedAt`, `UpdatedAt` when creating
func updateTimeStampForCreateCallback(scope *Scope) { func updateTimeStampForCreateCallback(scope *Scope) {
if !scope.HasError() { if !scope.HasError() {
now := NowFunc() unix := UnixFunc()
if createdAtField, ok := scope.FieldByName("CreatedAt"); ok { if createdAtField, ok := scope.FieldByName("CreatedAt"); ok {
if createdAtField.IsBlank { if createdAtField.IsBlank {
createdAtField.Set(now) createdAtField.Set(unix)
} }
} }
if updatedAtField, ok := scope.FieldByName("UpdatedAt"); ok { if updatedAtField, ok := scope.FieldByName("UpdatedAt"); ok {
if updatedAtField.IsBlank { if updatedAtField.IsBlank {
updatedAtField.Set(now) updatedAtField.Set(unix)
} }
} }
} }

View File

@ -40,7 +40,7 @@ func deleteCallback(scope *Scope) {
"UPDATE %v SET %v=%v%v%v", "UPDATE %v SET %v=%v%v%v",
scope.QuotedTableName(), scope.QuotedTableName(),
scope.Quote(deletedAtField.DBName), scope.Quote(deletedAtField.DBName),
scope.AddToVars(NowFunc()), scope.AddToVars(UnixFunc()),
addExtraSpaceIfExist(scope.CombinedConditionSql()), addExtraSpaceIfExist(scope.CombinedConditionSql()),
addExtraSpaceIfExist(extraOption), addExtraSpaceIfExist(extraOption),
)).Exec() )).Exec()

View File

@ -49,7 +49,7 @@ func beforeUpdateCallback(scope *Scope) {
// updateTimeStampForUpdateCallback will set `UpdatedAt` when updating // updateTimeStampForUpdateCallback will set `UpdatedAt` when updating
func updateTimeStampForUpdateCallback(scope *Scope) { func updateTimeStampForUpdateCallback(scope *Scope) {
if _, ok := scope.Get("gorm:update_column"); !ok { if _, ok := scope.Get("gorm:update_column"); !ok {
scope.SetColumn("UpdatedAt", NowFunc()) scope.SetColumn("UpdatedAt", UnixFunc())
} }
} }

View File

@ -688,7 +688,7 @@ func (scope *Scope) whereSQL() (sql string) {
) )
if !scope.Search.Unscoped && hasDeletedAtField { if !scope.Search.Unscoped && hasDeletedAtField {
sql := fmt.Sprintf("%v.%v IS NULL", quotedTableName, scope.Quote(deletedAtField.DBName)) sql := fmt.Sprintf("%v.%v = 0", quotedTableName, scope.Quote(deletedAtField.DBName))
primaryConditions = append(primaryConditions, sql) primaryConditions = append(primaryConditions, sql)
} }

View File

@ -21,6 +21,9 @@ import (
var NowFunc = func() time.Time { var NowFunc = func() time.Time {
return time.Now() return time.Now()
} }
var UnixFunc = func() int64 {
return time.Now().Unix()
}
// Copied from golint // Copied from golint
var commonInitialisms = []string{"API", "ASCII", "CPU", "CSS", "DNS", "EOF", "GUID", "HTML", "HTTP", "HTTPS", "ID", "IP", "JSON", "LHS", "QPS", "RAM", "RHS", "RPC", "SLA", "SMTP", "SSH", "TLS", "TTL", "UID", "UI", "UUID", "URI", "URL", "UTF8", "VM", "XML", "XSRF", "XSS"} var commonInitialisms = []string{"API", "ASCII", "CPU", "CSS", "DNS", "EOF", "GUID", "HTML", "HTTP", "HTTPS", "ID", "IP", "JSON", "LHS", "QPS", "RAM", "RHS", "RPC", "SLA", "SMTP", "SSH", "TLS", "TTL", "UID", "UI", "UUID", "URI", "URL", "UTF8", "VM", "XML", "XSRF", "XSS"}