Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yaml 如何在Symfony 3中转换表单验证?_Yaml_Symfony - Fatal编程技术网

Yaml 如何在Symfony 3中转换表单验证?

Yaml 如何在Symfony 3中转换表单验证?,yaml,symfony,Yaml,Symfony,我用i18n验证了表单中的所有内容,但是我不知道如何翻译表单验证。例如,现在当我尝试提交带有空字段的表单时,会弹出验证消息“请填写此字段” 已打开转换并启用注释: // config_dev.yml framework: router: resource: "%kernel.root_dir%/config/routing_dev.yml" strict_requirements: true profiler: { only_exceptions:

我用i18n验证了表单中的所有内容,但是我不知道如何翻译表单验证。例如,现在当我尝试提交带有空字段的表单时,会弹出验证消息“请填写此字段”

已打开转换并启用注释:

// 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;

我还在我的app/Resources/translations文件夹中创建了validators.en.yml文件,但不确定该从这里转到哪里。有人能帮忙吗?

您可以在
app/Resources/translations/validators.fr.xlf
中翻译验证消息(法语xlf翻译文件示例)


这里是您要查找的文档:

如果您看到来自浏览器的消息,您甚至没有提交表单。这是一条HTML5验证消息,与Symfony无关。@malcolm提交表单时会显示该消息。下一个答案……如果您看到带有消息的工具提示,即HTML5验证消息。提交表单并重新加载/重定向页面后,会显示Symfony验证消息,但您更清楚。。。如果您想知道,Symfony中not_blank assert的默认消息是:“此值不应为空。”您会得到“请填写此字段”。浏览器中的默认消息。@malcolm Ok yes我所做的设置只会帮助编写表单提交后返回的错误消息。诚然,我错了。我需要找出如何翻译HTML5消息,如果你试图提交一个必填字段,它会弹出一个空字段。HmmmmYou可以用javascript实现。