Я перевожу свое приложение на основе значения, определенного в базе данных (не на языке).
Это часть формы:
$builder
->add('email', EmailType::class, array( 'required' => 'required', 'attr' => array( 'class' => 'form-control','placeholder' => 'Email')))
->add('username', TextType::class, array( 'required' => 'required', 'attr' => array( 'class' => 'form-control', 'autofocus' => 'autofocus','placeholder' => 'Username')))
->add('plainPassword', RepeatedType::class, array(
'type' => PasswordType::class,
'first_options' => array('label' => 'Password', 'attr' => array( 'class' => 'form-control repeat', 'placeholder' => 'Password')),
'second_options' => array('label' => 'Repeat Password', 'attr' => array( 'class' => 'form-control', 'placeholder' => 'Repeat password')),
))
->add('termsAccepted', CheckboxType::class, array(
'mapped' => false,
'constraints' => new IsTrue(),
'attr' => array('class' => 'pull-left')
))
;
Эта часть моего шаблона ветки
<h1 class="h3 mb-3 font-weight-normal form-header">{% trans into lang %}Register{% endtrans %}</h1>
{{ form_start(form, { 'attr': {'class': 'form-signin'} }) }}
{{ form_row(form.username, {'label':false}) }}
{{ form_row(form.email, {'label':false}) }}
{{ form_row(form.plainPassword.first, {'label':false}) }}
{{ form_row(form.plainPassword.second, {'label':false}) }}
{{ form_row(form.termsAccepted, {'label':false}) }}
<p class="terms">Check here to indicate that you read and agree the <a href="{{ path('privacy_policy') }}">Privacy Policy.</a></p>
<button class="btn btn-lg btn-primary btn-block" type="submit">Register</button>
{{ form_end(form) }}
На основании:
{% trans в lang%} текст для перевода {% endtrans%}
Если я попытаюсь перевести все поле, сделайте исключение: «только транс может продолжить просто текст».
Есть какой-нибудь трюк, чтобы вставить заполнитель непосредственно в мой шаблон веточки?.