私はSymfony2とFOSUserBundleを使用しています。
この質問は、FOSUserBundleの他のバンドルされたフォームに拡張できます。
バンドルに含まれているため、FOSUserBundleのログインフォームを使用するのは非常に簡単です。その場合、完全なフォームが表示され、それを「コピー」するか、他の場所で使用して、希望するスタイルを適用するだけです。これはどのように見えるかです:
<form action="{{ path("fos_user_security_check") }}" method="post">
<input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />
<label for="username">{{ 'security.login.username'|trans({}, 'FOSUserBundle') }}</label>
<input type="text" id="username" name="_username" value="{{ last_username }}" />
<label for="password">{{ 'security.login.password'|trans({}, 'FOSUserBundle') }}</label>
<input type="password" id="password" name="_password" />
<input type="checkbox" id="remember_me" name="_remember_me" value="on" />
<label for="remember_me">{{ 'security.login.remember_me'|trans({}, 'FOSUserBundle') }}</label>
<input type="submit" id="_submit" name="_submit" value="{{ 'security.login.submit'|trans({}, 'FOSUserBundle') }}" />
しかし、たとえば、登録フォームはどうですか?その場合、バンドルに含まれるのはこれだけです。
<form action="{{ path('fos_user_registration_register') }}" {{ form_enctype(form) }} method="POST" class="fos_user_registration_register">
{{form_widget(form)}}
<input type="submit" value="{{ 'registration.submit'|trans({}, 'FOSUserBundle') }}" />
</div></form>
[stackoverflowがこの最後のコードを正しく解析しておらず、正しくきれいになっていないことに注意してください]
ご覧のとおり、すべてのフォームはタグ{{form_widget(form)}}から取得され、フォームをレンダリングする必要があるのはこれだけです。
質問:自分のスタイル、幅、色などに合わせて、そのフォームをどこでどのように変更できますか?