Einschränkungen

Nachfolgend finden Sie eine Übersicht über die in brandbox verfügbaren Constraints. Zusätzlich finden Sie unter https://symfony.com/doc/current/validation.html#supported-constraints weitere Constraints von Symfony. Einschränkungen (Constraints) müssen immer nach folgendem Schemata definiert werden:

Kriterium(Parameter="Wert", Parameter=Wert, ...)

Weitere Informationen zum Einsatz der Einschränkungen können Sie in der Dokumentation des Validators nachlesen.

Optionen

Jede Einschränkung kann per Optionen konfiguriert werden. Eine fast immer verfügbare Option ist die anzuzeigende Fehlermeldung, falls die Einschränkung nicht eingehalten werden kann.

Definition einer statischen Fehlermeldung
Kriterium(message="Das ist eine Fehlermeldung!")



Definition einer übersetzbaren Fehlermeldung
Kriterium(message="i18n:Custom/Package.TranslationIdentifier")

Häufig verwendete Einschränkungen (Symfony)

Einschränkung

Beschreibung

Weitere Informationen

Einschränkung

Beschreibung

Weitere Informationen

NotBlank()

Stellt sicher, dass eine Eingabe nicht "leer" ist. "Leer" kann sich auf eine Zeichenkette aber auch ein Array beziehen.

https://symfony.com/doc/current/reference/constraints/NotBlank.html

Length(min=1, max=255)

Stellt die Länge einer Zeichenkette sicher.

https://symfony.com/doc/current/reference/constraints/Length.html

Regex(pattern="/^regexp$/i")

Prüft eine Zeichenkette mit einer Regular Expression.

https://symfony.com/doc/current/reference/constraints/Regex.html

In brandbox erstellte Einschränkungen

Einschränkung

Beschreibung

Einschränkung

Beschreibung

Age(min=18, max=99)

Kann als Einschränkung einer Datumsauswahl genutzt werden um ein Alter einzuschränken.

IsIdentical(property="confirmation")

Stellt sicher, dass zwei Eingaben identisch zueinander sind.

IsUnique(global=true|false)

Kann nur bei einer Eigenschaft (Column) einer Entity verwendet werden. Stellt sicher, dass die Eingabe nur einmal innerhalb der Entity und Eigenschaft exisiert. @FilterClient und @FilterDomain wird bei global=true berücksichtigt.

JsonArray()

Stellt sicher, dass eine Eingabe ein Array ist.

NotHtml()

Stellt sicher, dass eine Eingabe kein HTML-Code enthält.

ForeignKeyNotBlank()

Kann nur zusammen mit dem Eingabefeld Input/ForeignKey verwendet werden. Stellt sicher, dass eine Eingabe eine gültige Auswahl an Datensätzen ist.

Email()

Stellt sicher, dass eine Eingabe eine gültige E-Mail-Adresse ist.

IsCombinedUnique(columns="column1,column2,...")

Ähnlich zu IsUnique() wir hier die Eindeutigkeit einer Kombination sichergestellt. Diese Einschränkung muss auf Entity-Level definiert werden.