routeUpdate method
WebRoute
routeUpdate(
- String path, {
- required WebRequest rq,
- List<
String> methods = const [RequestMethods.POST], - Future<
ApiDoc> ? apiDoc()?, - WaAuthController? auth,
- List<
String> extraPath = const [], - List<
String> excludePaths = const [], - List<
String> hosts = const ['*'], - Map<
String, Object?> params = const {}, - List<
String> permissions = const [], - List<
int> ports = const [],
Implementation
WebRoute routeUpdate(
String path, {
required WebRequest rq,
List<String> methods = const [RequestMethods.POST],
Future<ApiDoc>? Function()? apiDoc,
WaAuthController<dynamic>? auth,
List<String> extraPath = const [],
List<String> excludePaths = const [],
List<String> hosts = const ['*'],
Map<String, Object?> params = const {},
List<String> permissions = const [],
List<int> ports = const [],
}) {
final index = () async {
var id = rq.getParam('id', def: '').toString();
if (id.isEmpty) {
return rq.renderData(
data: {
'success': false,
'message': 'id is required',
},
status: 502,
);
}
var res = await replaceOne(id, rq.getAllData());
if (res == null) {
return rq.renderData(
data: {
'success': false,
'message': 'id not found',
},
status: 404,
);
}
if (!res.success) {
return rq.renderData(
data: {
'form': res.toJson(),
'success': false,
'message': 'error',
},
status: 502,
);
}
return rq.renderData(data: {
'data': res.formValues(),
'success': true,
'message': 'updated',
});
};
return WebRoute(
path: path,
methods: methods,
rq: rq,
apiDoc: apiDoc,
auth: auth,
excludePaths: excludePaths,
extraPath: extraPath,
hosts: hosts,
params: params,
permissions: permissions,
ports: ports,
index: index,
);
}