Contrainte
La colonne constraint est utilisée pour valider la saisie utilisateur. Elle empêche l'utilisateur de continuer tant que la réponse ne satisfait pas une condition que vous définissez.
Si la réponse ne satisfait pas la contrainte, un message défini dans constraint_message est affiché à l'utilisateur.
📝 Comment fonctionnent les contraintes
La valeur de la question est représentée par un point (.), ce qui signifie « la réponse courante ». Vous construisez une expression logique en utilisant cette valeur.
Les contraintes sont couramment utilisées pour :
Définir des plages numériques (par ex., l'âge doit être entre 0 et 120)
Exiger des formats correspondants (par ex., codes postaux, emails)
Appliquer des dépendances (par ex., date de fin après date de début)
integer
age
Votre âge
. >= 18 and . <= 99
L'âge doit être compris entre 18 et 99
text
zip
Code postal
regex(., '^\d{5}$')
Saisissez un code postal à 5 chiffres
text
Adresse email
regex(., '^[^@]+@[^@]+.[^@]+$')
Saisissez un email valide
date
end
Date de fin
. >= ${start}
La date de fin doit être après la date de début
☑️ Utilisation du point (.) dans constraint
Le point . représente la valeur saisie par l'utilisateur pour la question courante. Utilisez-le dans les fonctions et les expressions :
. >= 0— valide si la valeur est 0 ou plusregex(., '^\d{5}$')— valide si elle correspond au motif
🔠 Références de variables
Vous pouvez utiliser ${question_name} pour référencer les réponses d'autres questions du formulaire. Assurez-vous que les questions référencées apparaissent plus tôt dans le formulaire.
Exemple :
. > ${min_age}— garantit que la saisie courante est supérieure à une valeur saisie précédemment
🔢 Opérateurs et fonctions pour les contraintes
Comme pour la pertinence, vous pouvez utiliser :
=, !=, >, <, >=, <= and, or, not()
regex()
Valide le format d'une saisie texte
regex(., '^\d{5}$') pour les codes postaux US
string-length()
Vérifie le nombre de caractères
string-length(.) <= 50
selected()
Vérifie si un choix a été sélectionné
selected(${choices}, 'option1')
today()
Récupère la date actuelle
. <= today()
now()
Récupère la date et l'heure actuelles
. <= now()
Mis à jour
Ce contenu vous a-t-il été utile ?