findOne method
Retrieves the first object from the result of calling index with the given params
.
If the result of index is null
, OR an empty Iterable, a 404 AngelHttpException
will be thrown.
If the result is both non-null and NOT an Iterable, it will be returned as-is.
If the result is a non-empty Iterable, findOne will return it.first
, where it
is the aforementioned Iterable.
A custom errorMessage
may be provided.
Implementation
@override
Future<Map<String, dynamic>> findOne(
[Map<String, dynamic>? params,
String errorMessage =
'No record was found matching the given query.']) async {
var result =
(await store.findFirst(database, finder: _makeQuery(params)))?.value;
if (result == null) {
return {};
}
return result;
}