我正在使用普通用户和管理用户。它们都有单独的登录页、控制器和模型类。但是,当我以管理员身份触发密码重置时,我收到的电子邮件与普通用户相同(其中包括不正确的URL)。它应该发送一封电子邮件,为管理员用户提供正确的URL。如何配置/自定义设计,以便实现此行为?
发布于 2015-12-05 22:06:16
您可以做的是查找电子邮件模板设计用来发送重置电子邮件,它通常位于:/app/views/devise/mailer/reset_password_instructions.html.erb在这里,您需要修改这一行<p><%= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @token) %></p>,如果用户是管理员,就需要有条件地发送不同的密码重置地址。
您可以在您的终端窗口中执行一个rake routes,以查看您有哪些可用的路由,并将其用于管理员条件下的管理员.或者您可以对其进行硬编码,但通常只要可能,您就会使用路由助手。
希望这能有所帮助。
https://stackoverflow.com/questions/34097772
复制相似问题