In meinem Unternehmen habe ich das Feld:Symfony 3: GroupSequence in validation_groups
/**
* @Assert\Regex("/^[a-z0-9-]+$/", groups={"Basic1"})
* @Assert\Regex("/^[a-z0-9]+[a-z0-9-]*[a-z0-9]+$/", groups={"Basic2"})
* @AppAssert\SaveDomain(groups={"Registration"})
*/
protected $myField;
Ich mag Felder validieren, in dieser Reihenfolge: Basic1, Basic2, Registrierung.
Wenn ich GroupSequence in Klasse Annotation:
/**
* @Assert\GroupSequence({"MyEntity", "Basic1", "Basic2", "Registration"})
*/
class MyEntity
{
Es funktioniert wie erwartet, Basic1 => Basic2 => Anmeldung:
Aber ich brauche auch validation_groups verwenden ... Und wenn ich Geben Sie es in der Type-Klasse an, GroupSequence funktioniert nicht mehr.
Ich versuche GroupSequence direkt in validation_groups zu verwenden, aber es scheint, funktioniert nicht wie es hier gesagt wird: https://github.com/symfony/symfony/pull/10287
$form = $this->createForm(new BlogType(), new Blog(), [
'validation_groups' => new GroupSequence(['Basic', 'Strict']),
]);
Aber ich es in die Typklasse in configureOptions bin setzen:
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => 'AppBundle\Entity\MyEntyty',
'validation_groups' => new GroupSequence(['Basic1', 'Basic2', 'Registration']),
]);
}
Jemand weiß, wie ich GroupSequence und validation_groups gleichzeitig verwenden kann?
Die einzige Lösung, die ich jetzt gefunden ist ein benutzerdefinierten Validator specificly für dieses Feld ...
Ich mache das bereits, aber wenn ich validation_groups in der Klasse Type hinzufügen, funktioniert es nicht mehr. – Atyz