Merge bf8bb4ea7a309c9f081ab39a3fe7b280862fd642 into 89f6d74b5ebab61a964b7a69c865a16cf9f24821
This commit is contained in:
commit
91bc4c4ad4
@ -34,13 +34,19 @@ func deleteCallback(scope *Scope) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if !scope.Search.Unscoped && scope.HasColumn("DeletedAt") {
|
if !scope.Search.Unscoped && scope.HasColumn("DeletedAt") {
|
||||||
scope.Raw(fmt.Sprintf(
|
for _, field := range scope.Fields() {
|
||||||
"UPDATE %v SET deleted_at=%v%v%v",
|
if field.Name == "DeletedAt" {
|
||||||
scope.QuotedTableName(),
|
scope.Raw(fmt.Sprintf(
|
||||||
scope.AddToVars(NowFunc()),
|
"UPDATE %v SET %v=%v%v%v",
|
||||||
addExtraSpaceIfExist(scope.CombinedConditionSql()),
|
scope.QuotedTableName(),
|
||||||
addExtraSpaceIfExist(extraOption),
|
scope.Quote(field.DBName),
|
||||||
)).Exec()
|
scope.AddToVars(NowFunc()),
|
||||||
|
addExtraSpaceIfExist(scope.CombinedConditionSql()),
|
||||||
|
addExtraSpaceIfExist(extraOption),
|
||||||
|
)).Exec()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
scope.Raw(fmt.Sprintf(
|
scope.Raw(fmt.Sprintf(
|
||||||
"DELETE FROM %v%v%v",
|
"DELETE FROM %v%v%v",
|
||||||
|
10
gorm.iml
Normal file
10
gorm.iml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="GO_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||||
|
<exclude-output />
|
||||||
|
<content url="file://$MODULE_DIR$" />
|
||||||
|
<orderEntry type="jdk" jdkName="Go 1.6" jdkType="Go SDK" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
<orderEntry type="library" name="GOPATH <gorm>" level="project" />
|
||||||
|
</component>
|
||||||
|
</module>
|
11
scope.go
11
scope.go
@ -676,11 +676,14 @@ func (scope *Scope) whereSQL() (sql string) {
|
|||||||
primaryConditions, andConditions, orConditions []string
|
primaryConditions, andConditions, orConditions []string
|
||||||
)
|
)
|
||||||
|
|
||||||
if !scope.Search.Unscoped && scope.HasColumn("deleted_at") {
|
if !scope.Search.Unscoped && scope.HasColumn("DeletedAt") {
|
||||||
sql := fmt.Sprintf("%v.deleted_at IS NULL", quotedTableName)
|
for _, field := range scope.Fields() {
|
||||||
primaryConditions = append(primaryConditions, sql)
|
if field.Name == "DeletedAt" {
|
||||||
|
sql := fmt.Sprintf("%v.%v IS NULL", quotedTableName, scope.Quote(field.DBName))
|
||||||
|
primaryConditions = append(primaryConditions, sql)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !scope.PrimaryKeyZero() {
|
if !scope.PrimaryKeyZero() {
|
||||||
for _, field := range scope.PrimaryFields() {
|
for _, field := range scope.PrimaryFields() {
|
||||||
sql := fmt.Sprintf("%v.%v = %v", quotedTableName, scope.Quote(field.DBName), scope.AddToVars(field.Field.Interface()))
|
sql := fmt.Sprintf("%v.%v = %v", quotedTableName, scope.Quote(field.DBName), scope.AddToVars(field.Field.Interface()))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user