我正在使用 Symfony2 和 FOSUserBundle。
这个问题可以扩展到 FOSUserBundle 中的任何其他捆绑形式。
因为它就在 bundle 中,所以使用 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') }}" />
但是,例如,Registration Form 怎么样?在那种情况下,这就是我们在包中得到的全部内容:
<form action="{{ path('fos_user_registration_register') }}" {{ form_enctype(form) }} method="POST" class="fos_user_registration_register">
{{ form_widget(表单) }}
<input type="submit" value="{{ 'registration.submit'|trans({}, 'FOSUserBundle') }}" />
</div></form>
[请注意,stackoverflow 没有正确解析这最后一段代码,也没有正确地对其进行美化]
如您所见,所有表单都来自标签 {{ form_widget(form) }},这就是我们呈现表单所需的全部内容。
问题:如何以及在何处更改该表单以适合我的样式、宽度、颜色等...?
最佳答案
RegistrationForm 是用 Symfony2 Form Component 构建的,所以所有的定制都应该用它来完成。
这是一个很好的cookbook entry关于这个话题。
一个非常简单的例子:
<div class="pull-left input">
{{ form_label(form.username) }}
{{ form_widget(form.username) }}
</div>
{{ form_rest(form) }}
关于php - 如何将样式应用于 FOSUserBundle 中的注册表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11842930/