Skip to content

Commit d60e5b1

Browse files
committed
feat: add validating direct data
1 parent fda0d15 commit d60e5b1

File tree

1 file changed

+25
-5
lines changed

1 file changed

+25
-5
lines changed

src/docs/data/validation.md

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -151,15 +151,15 @@ $validatedData = request()->validate([
151151
Some rules like `min`, `max`, `between`, `match`, `contains`, `in` and `regex` require additional parameters. You can pass these parameters to the rules by separating them with a colon (`:`).
152152

153153
```php{2}
154-
form()->validate($data, [
154+
request()->validate([
155155
'bio' => 'min:10',
156156
]);
157157
```
158158

159159
Some rules like `between` and `in` require multiple parameters. You can pass these parameters by using an array.
160160

161161
```php{2}
162-
form()->validate($data, [
162+
request()->validate([
163163
'bio' => 'between:[18,30]',
164164
]);
165165
```
@@ -175,7 +175,7 @@ You can create your own rules using the `addRule()` method or it's alias `rule()
175175
::: code-group
176176

177177
```php [Regular Expression]
178-
request()->form()->rule('isEven', '/^\d*[02468]$/', '{field} must be even.');
178+
request()->validator()->rule('isEven', '/^\d*[02468]$/', '{field} must be even.');
179179

180180
...
181181

@@ -185,9 +185,9 @@ $validatedData = request()->validate([
185185
```
186186

187187
```php [Validator Function]
188-
request()->form()->rule('superTest', function ($value) {
188+
request()->validator()->rule('superTest', function ($value) {
189189
// in functions, you can also add the error messages like this
190-
request()->form()->message('superTest', '{field} should be superTest!');
190+
request()->validator()->message('superTest', '{field} should be superTest!');
191191

192192
return $value === 'superTest';
193193
});
@@ -249,3 +249,23 @@ $validatedData = request()->validate([
249249
'user\.name' => 'string',
250250
]);
251251
```
252+
253+
## Validating Data from other sources
254+
255+
Sometimes, you may want to validate data that does not come from the request object. You can do this by accessing the `Leaf\Form` class directly. We have a `form()` shortcut that returns the validator instance.
256+
257+
```php
258+
$dataToValidate = [
259+
'name' => 'John Doe',
260+
'age' => 25
261+
];
262+
263+
$validatedData = form()->validate($dataToValidate, [
264+
'name' => 'string',
265+
'age' => 'number'
266+
]);
267+
268+
if (!$validatedData) {
269+
$errors = form()->errors();
270+
}
271+
```

0 commit comments

Comments
 (0)