Add reset to other load functions

This commit is contained in:
Nikita Tokarchuk
2019-05-24 14:48:58 +02:00
parent dad0a0598b
commit 61621c0a3a
2 changed files with 10 additions and 2 deletions
+7 -2
View File
@@ -4,6 +4,7 @@ import (
"reflect"
"github.com/mainnika/mongox-go-driver/mongox"
"github.com/mainnika/mongox-go-driver/mongox/base"
"github.com/mainnika/mongox-go-driver/mongox/errors"
"github.com/mainnika/mongox-go-driver/mongox/query"
"go.mongodb.org/mongo-driver/mongo"
@@ -58,8 +59,12 @@ func LoadArray(db *mongox.Database, target interface{}, filters ...interface{})
} else {
continue
}
} else if err = result.Decode(targetSliceV.Index(i).Interface()); err != nil {
continue
} else {
elem := targetSliceV.Index(i).Interface()
base.Reset(elem)
if err = result.Decode(elem); err != nil {
continue
}
}
i++
+3
View File
@@ -2,6 +2,7 @@ package common
import (
"github.com/mainnika/mongox-go-driver/mongox"
"github.com/mainnika/mongox-go-driver/mongox/base"
"github.com/mainnika/mongox-go-driver/mongox/errors"
"github.com/mainnika/mongox-go-driver/mongox/query"
"go.mongodb.org/mongo-driver/mongo"
@@ -30,5 +31,7 @@ func LoadOne(db *mongox.Database, target interface{}, filters ...interface{}) er
return errors.NotFoundErrorf("can't find result: %s", result.Err())
}
base.Reset(target)
return result.Decode(target)
}