routeInsert method

WebRoute routeInsert(
  1. String path, {
  2. required WebRequest rq,
  3. List<String> methods = const [RequestMethods.POST],
  4. Future<ApiDoc>? apiDoc()?,
  5. WaAuthController? auth,
  6. List<String> extraPath = const [],
  7. List<String> excludePaths = const [],
  8. List<String> hosts = const ['*'],
  9. Map<String, Object?> params = const {},
  10. List<String> permissions = const [],
  11. List<int> ports = const [],
})

Implementation

WebRoute routeInsert(
  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 res = await insert(rq.getAllData());

    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': 'inserted',
    });
  };

  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,
  );
}