Use better errors in setops

This commit is contained in:
Aaron L 2016-08-27 12:13:15 -07:00
parent ea22d3656c
commit f6206ea6b7

View file

@ -7,7 +7,7 @@ func ({{.Function.Receiver}} *{{.LocalTable.NameGo}}) Set{{.Function.Name}}(exec
var err error var err error
if insert { if insert {
if err = related.Insert(exec); err != nil { if err = related.Insert(exec); err != nil {
return err return errors.Wrap(err, "failed to insert into foreign table")
} }
} }
@ -15,7 +15,7 @@ func ({{.Function.Receiver}} *{{.LocalTable.NameGo}}) Set{{.Function.Name}}(exec
{{.Function.Receiver}}.{{.Function.LocalAssignment}} = related.{{.Function.ForeignAssignment}} {{.Function.Receiver}}.{{.Function.LocalAssignment}} = related.{{.Function.ForeignAssignment}}
if err = {{.Function.Receiver}}.Update(exec, "{{.ForeignKey.Column}}"); err != nil { if err = {{.Function.Receiver}}.Update(exec, "{{.ForeignKey.Column}}"); err != nil {
{{.Function.Receiver}}.{{.LocalTable.ColumnNameGo}} = oldVal {{.Function.Receiver}}.{{.LocalTable.ColumnNameGo}} = oldVal
return err return errors.Wrap(err, "failed to update local table")
} }
if {{.Function.Receiver}}.R == nil { if {{.Function.Receiver}}.R == nil {
@ -41,7 +41,7 @@ func ({{.Function.Receiver}} *{{.LocalTable.NameGo}}) Remove{{.Function.Name}}(e
{{.Function.Receiver}}.{{.LocalTable.ColumnNameGo}}.Valid = false {{.Function.Receiver}}.{{.LocalTable.ColumnNameGo}}.Valid = false
if err = {{.Function.Receiver}}.Update(exec, "{{.ForeignKey.Column}}"); err != nil { if err = {{.Function.Receiver}}.Update(exec, "{{.ForeignKey.Column}}"); err != nil {
{{.Function.Receiver}}.{{.LocalTable.ColumnNameGo}}.Valid = true {{.Function.Receiver}}.{{.LocalTable.ColumnNameGo}}.Valid = true
return err return errors.Wrap(err, "failed to update local table")
} }
{{.Function.Receiver}}.R.{{.Function.Name}} = nil {{.Function.Receiver}}.R.{{.Function.Name}} = nil