create method
Creates a resource.
Implementation
@override
Future<Map<String, dynamic>> create(
Map<String, dynamic> data, [
Map<String, dynamic>? params,
]) async {
var item = _removeSensitive(data);
try {
if (params == null || params.isEmpty) {
var result = await collection.insertOne(data);
return _jsonify(result.document ?? {});
} else {
// Deprecated:
// var nonce = (await collection.db.getNonce())['nonce'] as String?;
var result = await collection.findAndModify(
query: _makeQuery(params),
update: item,
returnNew: true,
upsert: true,
);
return _jsonify(result ?? {});
}
} catch (e, st) {
throw AngelHttpException(stackTrace: st);
}
}