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

@@ -275,7 +275,9 @@ func (nu *NodeUpdate) sqlSave(ctx context.Context) (n int, err error) {
_spec.Edges.Add = append(_spec.Edges.Add, edge)
}
if n, err = sqlgraph.UpdateNodes(ctx, nu.driver, _spec); err != nil {
if cerr, ok := isSQLConstraintError(err); ok {
if _, ok := err.(*sqlgraph.NotFoundError); ok {
err = &NotFoundError{node.Label}
} else if cerr, ok := isSQLConstraintError(err); ok {
err = cerr
}
return 0, err
@@ -531,7 +533,9 @@ func (nuo *NodeUpdateOne) sqlSave(ctx context.Context) (n *Node, err error) {
_spec.Assign = n.assignValues
_spec.ScanValues = n.scanValues()
if err = sqlgraph.UpdateNode(ctx, nuo.driver, _spec); err != nil {
if cerr, ok := isSQLConstraintError(err); ok {
if _, ok := err.(*sqlgraph.NotFoundError); ok {
err = &NotFoundError{node.Label}
} else if cerr, ok := isSQLConstraintError(err); ok {
err = cerr
}
return nil, err