API Reference

Validation

Focused reference for Flint Dart and Flint UI APIs, with copyable examples and practical notes.

Validation

Rule-based validation over Flint's normalized request input map.

Future<void> Validator.validate(Map<String, dynamic> data, Map<String, String> rules, {Map<String, String>? messages})

Validate a data map and throw ValidationException on failure.

Future<Map<String, dynamic>> ctx.req.validate(Map<String, String> rules)

Validate normalized input and return the parsed map. Works across JSON, URL-encoded forms, multipart fields, files, query params, and route params.

Future<Map<String, String>> ctx.req.validateForm(Map<String, String> rules)

Deprecated form-only helper kept for compatibility. Prefer ctx.req.validate(...).

Example

CodeBlock dart
final data = await ctx.req.validate({
  'email': 'required|email',
  'password': 'required|string|min:8',
  'avatar': 'required',
});

final avatar = await ctx.req.input('avatar');

Behavior

Use the same validation rules whether the client sends JSON, URL-encoded form data, or multipart form data. form() still returns only text fields, while file uploads are available through file(), files(), allFiles(), and input().

Flint Dart logo
Flint DartBackend framework and Dart UI docs

Build routes, controllers, APIs, docs, and browser UI from one Dart-shaped stack.

Controllers
OpenAPI
Flint UI
Copyright 2024 Flint Dart. Maintained by Eulogia Technologies.
v 1.2.2
MIT License
Built with Dart