IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Modifier les messages d'erreur standard [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 214
    Par défaut Modifier les messages d'erreur standard
    Slt, je voudrais modifier pour tous mes formulaires les messages d'erreur par défaut comme required par exemple. Par défaut, en anglais il met :

    Et je voudrais le modifier sans avoir à le faire pour chaque champs. J'ai essayé de mettre dans BaseFormDoctrine :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sfValidatorBase::setDefaultMessage('required', 'This field is required.');
    Mais ça ne marche pas. Quelqu'un aurait une idée de comment procéder ?

    De plus, si j'arrive à faire ça, je voudrais avoir la liste des erreurs possibles. Je pense à "required", "invalid", "min-length", "max-length"... Y aurait-il un endroit ou ils sont tous listés ?

    Merci d'avance.

    Cordialement.

  2. #2
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Le plus simple est de mettre en place des fichiers de traduction (i18n) les formulaires sont conçu pour préparer tout leur message en vue d'être traduit.

    Il n'y a pas (hélas) de liste global des messages d'erreurs.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 214
    Par défaut
    Effectivement, en traduisant de l'anglais à l'anglais, ça change le message d'erreur Ça me parait bourrin mais si ça marche...

    Merci beaucoup !

  4. #4
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Effectivement (je sais, au départ c'est une boutade, mais...) traduire de l'anglais à l'anglais peut apporter un plus. En multilingue je préfère développer les écrans en pseudo anglais qui sera traduit en anglais, américain, français, allemand,... Ceci permet de ce soustraire des difficultés de correction d'un label dans la langue de base.

    Ce n'est pas une solution bourrin, c'est une très bonne solution de travail, dans ce cas, c'est probablement la meilleur.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 214
    Par défaut
    Effectivement, ça peut être une bonne solution de voir ça comme ça. Puisque nous somme dans le sujet des fichiers de traduction. Y-a-t-il un moyen de traduire facilement ses formulaires avec les labels ?

    Actuellement ce que je fais c'est un setLabel(). Puis il faut que je crées moi-même mes fichiers de langue à la main en n'oubliant aucun label sinon il ne sera pas traduit... J'ai cru voir sur de nombreuses sources que c'était la seule solution mais je la trouve vraiment pas commode sachant qu'ils ont déjà codé un système pour générer automatiquement ces fichiers à partir des sources... Y aurait-t-il quelque chose que j'aurais manqué ?

    Merci d'avance.

  6. #6
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Non, il n'y a pas d'autre méthode.

    En fait, il convient d'écrire simultanément le form et le/les fichiers de traduction.

    Le système automatique de création des fichiers de traduction n'est pas vraiment parfait et demande à être systématiquement réorganisé et retouché. D'où le fait de travailler en simultané.

    Par contre, pour les libellés qui ne sont pas issus d'un form, tu peux utiliser la fonction __() pour les traductions. Il faut inclure le helper i18n dans le template, le mieux étant de l'inclure au niveau du projet.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Plugin] Modifier les messages d'erreurs de jformer
    Par beegees dans le forum jQuery
    Réponses: 0
    Dernier message: 08/12/2013, 15h52
  2. Modifier le message d'erreur d'access pour les doublons
    Par ragus77 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 22/06/2013, 11h50
  3. Réponses: 0
    Dernier message: 01/11/2010, 18h55
  4. Réponses: 7
    Dernier message: 14/08/2007, 11h17
  5. [MySQL] Modifier les messages d'erreur.
    Par vampiloup dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 06/03/2006, 10h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo