Skip to content

Commit 54cdeb0

Browse files
feature: Support addExtensions for validated-dto. (#839)
* Update ValidatedDTO.php * Update ValidatedDTO.php * refactor: rename addExtensions to extensions and update validator extension logic * refactor: improve validator extension logic in ValidatedDTO * refactor: replace extensions method with afterValidatorResolving for improved validator handling --------- Co-authored-by: Deeka Wong <8337659+huangdijia@users.noreply.github.com>
1 parent 600b391 commit 54cdeb0

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

src/ValidatedDTO.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
use Hyperf\Contract\ValidatorInterface;
2020
use Hyperf\Validation\Contract\ValidatorFactoryInterface;
2121
use Hyperf\Validation\ValidationException;
22+
use Hyperf\Validation\Validator;
2223
use InvalidArgumentException;
2324

2425
abstract class ValidatedDTO extends SimpleDTO
@@ -61,6 +62,11 @@ protected function after(ValidatorInterface $validator): void
6162
// Do nothing
6263
}
6364

65+
protected function afterValidatorResolving(ValidatorInterface $validator): void
66+
{
67+
// Do nothing
68+
}
69+
6470
protected function scenes(): array
6571
{
6672
return [];
@@ -150,6 +156,8 @@ protected function isValidData(): bool
150156
$this->attributes()
151157
);
152158

159+
$this->afterValidatorResolving($this->validator);
160+
153161
$this->validator->after(fn ($validator) => $this->after($validator));
154162

155163
return ! $this->validator->fails();
@@ -197,6 +205,8 @@ private function validationPasses(): bool
197205
$this->attributes()
198206
);
199207

208+
$this->afterValidatorResolving($this->validator);
209+
200210
$this->validator->after(fn (ValidatorInterface $validator) => $this->after($validator));
201211

202212
return ! $this->validator->fails();

0 commit comments

Comments
 (0)