1
在我的表單中使用i18n驗證了所有內容,但無法弄清楚如何翻譯表單驗證。例如,現在,當我嘗試使用空白字段提交表單時,彈出式驗證消息「請填寫此字段」。如何翻譯Symfony 3中的表單驗證?
翻譯被打開並啓用了註釋:
// 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 }
實體被操縱進行驗證註釋:
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;
我還創建了文件validators.en.yml在我的應用程序/資源/譯文件夾,但不知道從哪裏去。誰能幫忙?
您看到您的瀏覽器消息,你甚至不提交表單。這是一個HTML5驗證消息,與Symfony無關。 – malcolm
@malcolm消息在您提交表單時出現。下一個答案.... – pogeybait
如果您看到提示消息是HTML5驗證消息的工具提示。 Symfony驗證消息出現在表單提交後,頁面被重新加載/重定向,但是你知道的更好......如果你想知道,Symfony中not_blank斷言的默認信息是:「這個值不應該是空的。」你會得到「請填寫這個字段。」來自瀏覽器的默認消息。 – malcolm