[#2287] fixed unique field detailed error not being returned on DrySubmit failure

This commit is contained in:
Gani Georgiev
2023-04-13 22:37:10 +03:00
parent 35e433f26b
commit 8317ae2e6b
3 changed files with 18 additions and 6 deletions

View File

@@ -707,7 +707,7 @@ func (form *RecordUpsert) DrySubmit(callback func(txDao *daos.Dao) error) error
defer tx.Rollback()
if err := txDao.SaveRecord(form.record); err != nil {
return err
return form.prepareError(err)
}
// restore record isNew state
@@ -779,11 +779,7 @@ func (form *RecordUpsert) Submit(interceptors ...InterceptorFunc[*models.Record]
// persist the record model
if err := dao.SaveRecord(form.record); err != nil {
preparedErr := form.prepareError(err)
if _, ok := preparedErr.(validation.Errors); ok {
return preparedErr
}
return fmt.Errorf("failed to save the record: %w", err)
return form.prepareError(err)
}
// delete old files (if any)