Prevent primary key from being changed when doing an update on Interface based queries
This commit is contained in:
parent
05fba9a152
commit
7fe81acec6
@ -69,9 +69,14 @@ func updateCallback(scope *Scope) {
|
|||||||
sort.Strings(columns)
|
sort.Strings(columns)
|
||||||
|
|
||||||
for _, column := range columns {
|
for _, column := range columns {
|
||||||
|
// Get the field data
|
||||||
|
field, _ := scope.FieldByName(column)
|
||||||
|
|
||||||
|
if !field.IsPrimaryKey {
|
||||||
value := updateMap[column]
|
value := updateMap[column]
|
||||||
sqls = append(sqls, fmt.Sprintf("%v = %v", scope.Quote(column), scope.AddToVars(value)))
|
sqls = append(sqls, fmt.Sprintf("%v = %v", scope.Quote(column), scope.AddToVars(value)))
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
for _, field := range scope.Fields() {
|
for _, field := range scope.Fields() {
|
||||||
if scope.changeableField(field) {
|
if scope.changeableField(field) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user