Currently I'm using this method to validate data coming from a POST request:
//src/Controller/UserCreationController.php
//Creates collection
$constraints = new Collection([
'username' => (new Required(new NotBlank())),
'password' => (new Required(new NotBlank())),
'email' => (new Required([new NotBlank(), new Email()])),
'readAndAgree' => (new Required(new NotBlank())),
'receiveUpdates' => (new Required(new NotBlank())),
]);
//Creates validator
$validator = Validation::createValidator();
$validation = $validator->validate(json_decode($request->getContent(), true), $constraints);
//Check for errors
if(count($validation) > 0) {
//Return bad fields
$errorsString = (string) $validation;
return $this->json($errorsString, 400);
}
Is it possible to use Symfony's validator and create a custom validator for POST data? (most times not related to a model, so I couldn't find a good example). The goal is to make the controller's code cleaner, so I'm looking for possibilities in creating a new .yml in /config/validator, but all examples I can find are related to models and not custom data.