2016-08-08 42 views
1

Habe alles in meiner Form mit i18n validieren nur gut, aber kann nicht herausfinden, wie die Formularvalidierung zu übersetzen. Zum Beispiel, wenn ich jetzt versuche, das Formular mit einem leeren Feld einzureichen, erhalte ich die Bestätigungsmeldung "Bitte dieses Feld ausfüllen".Wie übersetze ich die Formularvalidierung in Symfony 3?

Übersetzung eingeschaltet und Anmerkungen aktiviert:

// config_dev.yml 
framework: 
    router: 
     resource: "%kernel.root_dir%/config/routing_dev.yml" 
     strict_requirements: true 
    profiler: { only_exceptions: false } 
    translator: { fallback: en } 
    validation: { enable_annotations: true } 

Entity für die Validierung Anmerkungen in Ordnung gebracht werden:

namespace AppBundle\Entity; 

use Doctrine\ORM\Mapping as ORM; 
use Symfony\Component\Validator\Constraints as Assert; 
.... 
    /** 
    * @var string 
    * @Assert\NotBlank(message = "Custom validation error message") 
    * @ORM\Column(name="url", type="string", length=512) 
    */ 
    private $url; 

Ich habe auch die Datei validators.en.yml in meinen app/Ressourcen/Übersetzungen Ordner, aber nicht sicher, wo Sie von hier aus gehen. Kann jemand helfen?

+2

Sie sehen Nachricht von Ihrem Browser, Sie auch nicht die Form eingereicht. Dies ist eine HTML5-Validierungsnachricht, die nicht mit Symfony zusammenhängt. – malcolm

+0

@malcolm Die Nachricht wird angezeigt, wenn Sie das Formular absenden. Nächste Antwort .... – pogeybait

+1

Wenn Sie die QuickInfo mit der Nachricht sehen, die die HTML5-Validierungsnachricht ist. Symfony-Validierungsnachrichten werden angezeigt, nachdem das Formular abgeschickt und die Seite neu geladen/umgeleitet wurde, aber Sie wissen es besser ... Wenn Sie das wissen möchten, lautet die Standardnachricht für die Nicht-Blank-Bestätigung in Symfony: "Dieser Wert sollte nicht leer sein." und Sie erhalten "Bitte füllen Sie dieses Feld aus." die Standardnachricht von Ihrem Browser. – malcolm

Antwort