(db *gorm.DB)
| 296 | } |
| 297 | |
| 298 | func AfterQuery(db *gorm.DB) { |
| 299 | // clear the joins after query because preload need it |
| 300 | if v, ok := db.Statement.Clauses["FROM"].Expression.(clause.From); ok { |
| 301 | fromClause := db.Statement.Clauses["FROM"] |
| 302 | fromClause.Expression = clause.From{Tables: v.Tables, Joins: utils.RTrimSlice(v.Joins, len(db.Statement.Joins))} // keep the original From Joins |
| 303 | db.Statement.Clauses["FROM"] = fromClause |
| 304 | } |
| 305 | if db.Error == nil && db.Statement.Schema != nil && !db.Statement.SkipHooks && db.Statement.Schema.AfterFind && db.RowsAffected > 0 { |
| 306 | callMethod(db, func(value interface{}, tx *gorm.DB) bool { |
| 307 | if i, ok := value.(AfterFindInterface); ok { |
| 308 | db.AddError(i.AfterFind(tx)) |
| 309 | return true |
| 310 | } |
| 311 | return false |
| 312 | }) |
| 313 | } |
| 314 | } |
nothing calls this directly
no test coverage detected