fix return value for *schema.Check

This commit is contained in:
daheige 2021-06-14 10:29:15 +08:00
parent fae2dd4815
commit a689e56433

View File

@ -465,7 +465,7 @@ func buildConstraint(constraint *schema.Constraint) (sql string, results []inter
return return
} }
func (m Migrator) GuessConstraintAndTable(stmt *gorm.Statement, name string) (_ *schema.Constraint, _ *schema.Check, table string) { func (m Migrator) GuessConstraintAndTable(stmt *gorm.Statement, name string) (*schema.Constraint, *schema.Check, string) {
if stmt.Schema == nil { if stmt.Schema == nil {
return nil, nil, stmt.Table return nil, nil, stmt.Table
} }
@ -492,9 +492,11 @@ func (m Migrator) GuessConstraintAndTable(stmt *gorm.Statement, name string) (_
} }
if field := stmt.Schema.LookUpField(name); field != nil { if field := stmt.Schema.LookUpField(name); field != nil {
for _, cc := range checkConstraints { // fix return value for *schema.Check
if cc.Field == field { for k := range checkConstraints {
return nil, &cc, stmt.Table if checkConstraints[k].Field == field {
v := checkConstraints[k]
return nil, &v, stmt.Table
} }
} }