1

我使用 Symfony 2.4、KnpLabs DoctrineBehaviors 包在数据库中进行翻译,并使用 A2LiX Translation Form 进行字段翻译。

数据库中的表单显示和插入工作正常,但不打印翻译字段的错误。

例如 :

  • “照片”字段的错误是打印
  • 可翻译字段“title”的错误未打印

Post.php

/**
* 
* @ORM\Column(name="photo", type="string", length=255)
* @Assert\NotBlank(message="no photo")
*/
private $photo;

PostTranslation.php

/**
* 
* @ORM\Column(name="title", type="string", length=255)
* @Assert\NotBlank(message="no title")
*/
private $title;

PostType.php

$builder
    ->add('translations', 'a2lix_translations')
    ->add('photo')
    ->add('submit', 'submit');

form.html.twig

<form method="post" novalidate {{form_enctype(form)}}>
    <p>{{ form_widget(form.translations) }}</p>
    <p>{{ form_label(form.photo, 'photo') }}<br />{{ form_widget(form.photo) }}</p>
    <p>{{ form_widget(form.submit) }}</p>
    <p>{{ form_widget(form._token) }}</p>
    <p>{{ form_errors(form.translations) }}</p>
    <p>{{ form_errors(form.photo) }}</p>
<form>

当我提交表格时,我有这个 感谢您的帮助

4

2 回答 2

1

首先更新到 A2lixTranslationFormBundle 的最新版本。并检查您的 Post 实体中是否有 $translations 字段上的 @Assert\Valid 注释。

请参阅http://symfony.com/doc/current/reference/constraints/Valid.html

use Symfony\Component\Validator\Constraints as Assert;

 /**
  * @Assert\Valid
  */
 protected $translations;
于 2014-04-07T15:21:33.740 回答
0

要在 YAML 配置中执行此操作,您可以执行以下操作:

CRMPicco\GolfBundle\Entity\CourseGuide:
    properties:
        name:
            - NotBlank: ~
        translations:
            - Valid: ~
于 2015-10-30T10:18:09.890 回答