2017-09-26 2 views
0

Ich versuche, die Standardbereiche des Registrierungsformulars fosusbundle zu überschreiben. Ich fügte alle erforderlichen Felder hinzu, die ich durch Datenbank wollte und mit dem Bootstrap cdn besonders anfertigen. Aber wenn ich versuche, die Standardfelder des Registrierungsformulars anzupassen, kann ich es nicht in register_content.html.twig und register.html.twig finden, um sie zu bearbeiten.Registrierungsformular in FOSUserBundle überschreiben Symfony

register_content.html.twig

{% trans_default_domain 'FOSUserBundle' %} 

{{ form_start(form, {'method': 'post', 'action': path('fos_user_registration_register'), 'attr': {'class': 'fos_user_registration_register'}}) }} 
    {{ form_widget(form) }} 
    <div> 

     <input class="btn btn-success" type="submit" id="_submit" name="_submit" value="{{ 'registration.submit'|trans }}" /> 
    </div> 
{{ form_end(form) }} 

register.html.twig

{% extends "@FOSUser/layout.html.twig" %} 

{% block fos_user_content %} 
{% include "@FOSUser/Registration/register_content.html.twig" %} 
{% endblock fos_user_content %} 

ich alle folgenden Textfelder anpassen möchten.

  • Email
  • Benutzername
  • Passwort
  • Passwort wiederholen

Wo finde ich die oben genannten Bereichen finden?

Vielen Dank im Voraus.

Antwort

0

Wenn Sie bestehende Formtype außer Kraft zu setzen dann diese doc folgen: http://symfony.com/doc/master/bundles/FOSUserBundle/overriding_forms.html

Wenn Sie bestimmte Felder in html wählen möchten, können Sie wählen, Felder wie folgt aus:

{{ form_widget(form.email) }}

{{ form_widget(form.username) }}

oder

{{ form_widget(form.email, { 'attr': {'class': 'foo'} }) }}

+0

Ich habe es nicht verstanden. Kannst du ein bisschen mehr ausarbeiten? – serializer

+0

natürlich möchten Sie das Registrierungsformularmodell überschreiben? oder nur die Eingaben in HTML trennen? –

+0

Ich denke, ich möchte die Eingänge trennen, damit ich sie anpassen kann. – serializer

1

Sie können ihren finden an Verkäufer/friendsofsymfony/user Bündel/Form/Typ/RegistrationFormType, wenn Sie seine directy

public function buildForm(FormBuilderInterface $builder, array $options) 
{ 
    $builder 
     ->add('email', 'email', array('label' => 'form.email', 'translation_domain' => 'FOSUserBundle')) 
     ->add('username', null, array('label' => 'form.username', 'translation_domain' => 'FOSUserBundle')) 
     ->add('plainPassword', 'repeated', array(
      'type' => 'password', 
      'options' => array('translation_domain' => 'FOSUserBundle'), 
      'first_options' => array('label' => 'form.password'), 
      'second_options' => array('label' => 'form.password_confirmation'), 
      'invalid_message' => 'fos_user.password.mismatch', 
     )) 
    ; 
} 

Aber es besser ändern möchten die Formtyp, wie unten in config.yml außer Kraft zu setzen (erstelle ein neues formType)

fos_user: 
# ... 
registration: 
    form: 
     type: AppBundle\Form\RegistrationType 
+0

Das funktioniert auch Mann. Vielen Dank.. – serializer

Verwandte Themen