mirror of https://github.com/go-gorm/gorm.git
Fix panic when using Select/Omit Associations with no schema, close #3160
This commit is contained in:
parent
6dc583869b
commit
e77156980c
|
@ -503,7 +503,7 @@ func (stmt *Statement) SelectAndOmitColumns(requireCreate, requireUpdate bool) (
|
|||
for _, dbName := range stmt.Schema.DBNames {
|
||||
results[dbName] = true
|
||||
}
|
||||
} else if column == clause.Associations {
|
||||
} else if column == clause.Associations && stmt.Schema != nil {
|
||||
for _, rel := range stmt.Schema.Relationships.Relations {
|
||||
results[rel.Name] = true
|
||||
}
|
||||
|
@ -517,9 +517,11 @@ func (stmt *Statement) SelectAndOmitColumns(requireCreate, requireUpdate bool) (
|
|||
// omit columns
|
||||
for _, omit := range stmt.Omits {
|
||||
if omit == clause.Associations {
|
||||
if stmt.Schema != nil {
|
||||
for _, rel := range stmt.Schema.Relationships.Relations {
|
||||
results[rel.Name] = false
|
||||
}
|
||||
}
|
||||
} else if field := stmt.Schema.LookUpField(omit); field != nil && field.DBName != "" {
|
||||
results[field.DBName] = false
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue