File tree 2 files changed +8
-3
lines changed
2 files changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -141,6 +141,9 @@ func (v VersionUpdateClause) ModifyStatement(stmt *gorm.Statement) {
141
141
if field .DBName == v .Field .DBName {
142
142
continue
143
143
}
144
+ if field .DBName == "" {
145
+ continue
146
+ }
144
147
145
148
if v , ok := selectColumns [field .DBName ]; (ok && v ) || (! ok && (! restricted || ! stmt .SkipHooks )) {
146
149
if field .AutoUpdateTime > 0 {
Original file line number Diff line number Diff line change @@ -198,12 +198,14 @@ func TestEmbed(t *testing.T) {
198
198
199
199
account := Account {
200
200
UserID : 1 ,
201
+ User : & user ,
201
202
Amount : 1000 ,
202
203
Ext : Ext {CreditCard : []string {"123456" , "456123" }},
203
204
}
204
205
_ = DB .Migrator ().DropTable (& Account {})
205
206
_ = DB .AutoMigrate (& Account {})
206
- DB .Save (& account )
207
+ require .Nil (t , DB .Save (& account ).Error )
208
+ require .Nil (t , DB .Save (& account ).Error )
207
209
208
210
sql := DB .Session (& gorm.Session {DryRun : true }).Updates (& account ).Statement .SQL .String ()
209
211
require .Contains (t , sql , "`updated_at`=?" )
@@ -232,8 +234,8 @@ func TestEmbed(t *testing.T) {
232
234
var a1 Account
233
235
require .Nil (t , DB .First (& a1 ).Error )
234
236
require .Equal (t , a .Amount , a1 .Amount )
235
- require .Equal (t , int64 (2 ), a .Version .Int64 )
236
- require .Equal (t , int64 (3 ), a1 .Version .Int64 )
237
+ require .Equal (t , int64 (3 ), a .Version .Int64 )
238
+ require .Equal (t , int64 (4 ), a1 .Version .Int64 )
237
239
}
238
240
239
241
// use gorm.io/gorm/tests docker compose file
You can’t perform that action at this time.
0 commit comments