Przemysław
Godlewski
Own company/PHP
programmer/Web
Developer
Temat: Walidacja kolekcji w Symfony
WitajcieCy wiecie w jaki sposób podcas walidacji kolekcji dodać do wiadomości błędów której pozycji/indeksu dany komunikat błędu dotyczy?
Przykładowo, mamy w jakiejś głównej klasie Firma walidację kolekcji pracowników, czyli firma może zwierać listę wielu pracowników. Poniższy pseudokod jest bardzo uproszczony:
public class Company {
public static function loadValidatorMetadata(ClassMetadata $metadata)
{
$metadata->addPropertyConstraint('employees, new Valid());
}
}
a w klasie Employee mamy:
public static function loadValidatorMetadata(ClassMetadata $metadata)
{
$metadata->addPropertyConstraint('name', new Assert\NotBlank(array(
'message' => 'Wpisz imię i nazwisko pracownika!',
)));
}
Teraz jeżeli dodam do firmy kolekcję składającą się z 2 pracowników i nie wypełnię ich imion, to widzę dwa razy te same treści błędów:
Wpisz imię i nazwisko pracownika!
Wpisz imię i nazwisko pracownika!
a chciałbym aby do treści błędu dodany został "indeks/nr elementu" elementu z kolekcji, czyli np.:
Wpisz imię i nazwisko pracownika 1!
Wpisz imię i nazwisko pracownika 2!
Czy ktoś wie jak w metodzie loadValidatorMetadata po stronie kolekcji dostać się do indeksu elementu w kolekcji ?
Z góry dziękuję za pomoc.