我的表格出了问题。我用message.yml翻译我的所有字段,它的工作原理。但是我还有一个来自VichUploaderBundle的上传按钮。我可以翻译标签,但是当我测试它时,标签是英文的,但按钮是德文的。
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('id', TextType::class, array('disabled' => true))
->add('title',TextType::class, array('label' => 'edit.title'))
->add('body', TextareaType::class, array('label' => 'edit.body'))
->add('date', DateType::class, array('disabled' => true, 'label' => 'edit.date'))
->add('tags', EntityType::class, array(
'class' => 'AppBundle:Tag',
'choice_label' => 'getTitle',
'multiple'=> true,
'expanded'=> true))
->add(
'technology',
EntityType::class,
array(
'class' => 'AppBundle\Entity\Technology',
'choice_label' => 'getTitle',
'group_by' => 'parent.getTitle',
'query_builder' => function (EntityRepository $er) {
return $er->createQueryBuilder('t')
->where('t.parent IS NOT NULL')
->andWhere('SIZE(t.children) <= 0');
}
))
->add('imageFile', VichImageType::class, array(
'required' => false,
'allow_delete' => true,
'download_link' => true,
'label' => 'edit.image_file',
))
;
}
我不知道如何翻译按钮。
答案 0 :(得分:0)
您只是创建一个html文件输入。
此输入没有一些标签属性。
<input type="file" name="imageFile"/>
- &GT;按钮标签由您的浏览器设置(似乎是德语)。
答案 1 :(得分:0)
这些文本由浏览器定义,而不是由PHP或Symfony定义。您还会注意到,此窗口小部件在不同浏览器和不同操作系统上的显示方式不同。也没有可能改变小部件的设计。大多数CSS属性都不会产生影响。
您唯一能做的就是实现自定义JavaScript上传器,但这可能只适用于现代浏览器。
我从来没有这样做过,但是快速的谷歌搜索提出了http://www.queness.com/post/11434/7-javascript-ajax-file-upload-plugins,其中包含很少的JavaScript插件来执行此操作。