我正在将 Sonata Admin 与 SonataUser/FosUser 捆绑包一起使用。
我想将 FosUser 的“重置密码”功能集成到 Sonata 中。有没有快速的方法:
- 将“忘记密码”链接集成到奏鸣曲登录页面?
- 将功能与“admin/” url 前缀和奏鸣曲 html/twig 布局集成?
我正在将 Sonata Admin 与 SonataUser/FosUser 捆绑包一起使用。
我想将 FosUser 的“重置密码”功能集成到 Sonata 中。有没有快速的方法:
我已经修改了管理员登录模板以添加重置密码链接,您必须扩展 SonataUserBundle 才能使用您的自定义模板,请遵循文档。
自定义模板必须与 SonataUserBundle 中的名称和目录相同。这是我使用的模板:
Application\Sonata\UserBundle\Resources\views\Admin\Security\login.html.twig
{% extends base_template %}
{% block content %}
<div class="connection">
<form action="{{ path("sonata_user_admin_security_check") }}" method="post">
{% if error %}
<div class="alert alert-error">{{ error|trans({}, 'SonataUserBundle') }}</div>
{% endif %}
<input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />
<div class="control-group">
<label for="username">{{ 'security.login.username'|trans({}, 'FOSUserBundle') }}</label>
<div class="controls">
<input type="text" id="username" name="_username" value="{{ last_username }}" class="big sonata-medium"/>
</div>
</div>
<div class="control-group">
<label for="password">{{ 'security.login.password'|trans({}, 'FOSUserBundle') }}</label>
<div class="controls">
<input type="password" id="password" name="_password" class="big sonata-medium" />
</div>
</div>
<div class="control-group">
<label for="remember_me">
<input type="checkbox" id="remember_me" name="_remember_me" value="on" />
{{ 'security.login.remember_me'|trans({}, 'FOSUserBundle') }}
</label>
</div>
<div class="control-group">
<a href="{{ path('fos_user_resetting_request') }}">
{{ 'forgotten_password'|trans({}, 'SonataUserBundle') }}
</a>
</div>
<div class="form-actions">
<input type="submit" class="btn btn-primary" id="_submit" name="_submit" value="{{ 'security.login.submit'|trans({}, 'FOSUserBundle') }}" />
</div>
</form>
</div>
{% endblock content %}