entc/gen: use NotFoundError when updating non-exist node (#348)

Fixes #341
This commit is contained in:
Ariel Mashraki
2020-02-16 13:26:13 +02:00
committed by GitHub
parent 14ccf7b7fc
commit d9c8d9545d
52 changed files with 309 additions and 100 deletions

View File

@@ -173,7 +173,9 @@ func (cu *CarUpdate) sqlSave(ctx context.Context) (n int, err error) {
_spec.Edges.Add = append(_spec.Edges.Add, edge)
}
if n, err = sqlgraph.UpdateNodes(ctx, cu.driver, _spec); err != nil {
if cerr, ok := isSQLConstraintError(err); ok {
if _, ok := err.(*sqlgraph.NotFoundError); ok {
err = &NotFoundError{car.Label}
} else if cerr, ok := isSQLConstraintError(err); ok {
err = cerr
}
return 0, err
@@ -326,7 +328,9 @@ func (cuo *CarUpdateOne) sqlSave(ctx context.Context) (c *Car, err error) {
_spec.Assign = c.assignValues
_spec.ScanValues = c.scanValues()
if err = sqlgraph.UpdateNode(ctx, cuo.driver, _spec); err != nil {
if cerr, ok := isSQLConstraintError(err); ok {
if _, ok := err.(*sqlgraph.NotFoundError); ok {
err = &NotFoundError{car.Label}
} else if cerr, ok := isSQLConstraintError(err); ok {
err = cerr
}
return nil, err