2016-04-20 2 views
0

Ich versuche, Übersetzungen für meine Formulare zu implementieren. Ich habe bereits Fehlermeldungen übersetzt, aber ich kann anscheinend keine Formularfeldbezeichnungen übersetzen. Das ist, was ich habe:wie erhalten form field label aus der übersetzung?

public function buildForm(FormBuilderInterface $builder, array $options) 
{ 
    $builder 
     ->add("title", TextType::class, array(
      "label" => ""vacancy.label.title"", 
      "constraints" => array(
       new Length(array(
        "min" => 4, 
        "max" => 100, 
        "minMessage" => "vacancy.title.min_message", 
        "maxMessage" => "vacancy.title.max_message"), 
       new NotBlank(array("message" => "vacancy.not_blank")) 
     )))) 
     ->add("description", TextareaType::class, array(
      "label" => "Omschrijving", 
      "constraints" => array(
       new Length(array(
        "min" => 20, 
        "max" => 2000, 
        "minMessage" => "vacancy.description.min_message", 
        "maxMessage" => "vacancy.description.max_message"), 
       new NotBlank(array("message" => "vacancy.not_blank")) 
     )))) 
     ->add("startdate", DateType::class, array(
      "label" => "Begindatum", 
      "widget" => "single_text", 
      "constraints" => array(
       new Date(array(
        "message" => "vacancy.date.message" 
     ))))) 
     ->add("enddate", DateType::class, array(
      "label" => "Einddatum", 
      "widget" => "single_text", 
      "constraints" => array(
       new Date(array(
        "message" => "vacancy.date.message" 
     ))))) 
     ->add("submit", SubmitType::class, array(
      "label" => "Opslaan" 
     )); 
} 

Übersetzung:

vacancy: 
not_blank: Gelieve een waarde op te geven. 
title: 
    min_message: Gelieve minimum {{ limit }} tekens in te geven. 
    max_message: Gelieve maximum {{ limit }} tekens in te geven. 
description: 
    min_message: Gelieve minimum {{ limit }} tekens in te geven. 
    max_message: Gelieve maximum {{ limit }} tekens in te geven. 
date: 
    message: Gelieve een geldige datum op te geven. 
    name: Opslaan 
label: 
    title: Titel 
    description: Omschrijving 
    startdate: Begindatum 
    enddate: Einddatum 
    submit: Opslaan 

Von dem, was ich bisher gesammelt habe, kann ich abziehen, dass dies wie so in Zweig getan werden soll:

{{ form_start(form) }} 
    {{ form_errors(form) }} 

    <div> 
    {{ form_label("vacancy.label.title"|trans }} 
    {{ form_errors(form.title) }} 
    {{ form_widget(form.title) }} 
    </div> 
    <div> 
    {{ form_label(form.description) }} 
    {{ form_errors(form.description) }} 
    {{ form_widget(form.description) }} 
    </div> 
    <div> 
    {{ form_label(form.startdate) }} 
    {{ form_errors(form.startdate) }} 
    {{ form_widget(form.startdate) }} 
    </div> 
    <div> 
    {{ form_label(form.enddate) }} 
    {{ form_errors(form.enddate) }} 
    {{ form_widget(form.enddate) }} 
    </div> 
    <div> 
    {{ form_widget(form.submit) }} 
    </div> 
{{ form_end(form) }} 

Aber das geht nicht, was mache ich hier falsch?

Antwort

1

fand es, musste ich es sagen, von Übersetzungen zu holen wie so:

->add("enddate", DateType::class, array(
      "label" => "vacancy.label.enddate", 
      "translation_domain" => "validators", // tell it to look in translations 
      "widget" => "single_text", 
      // stuff ... 
+0

Sie können Ihre eigene Antwort akzeptieren, wird diese diese Frage markiert als gelöst: http://stackoverflow.com/help/ Selbstantwort –

+1

Ich habe darauf gewartet, dass es möglich ist. Es ist jetzt fertig. – SnelleJelle

Verwandte Themen