Ruby on rails 设计登录页面上的所有链接重定向回登录页面

Ruby on rails 设计登录页面上的所有链接重定向回登录页面,ruby-on-rails,devise,Ruby On Rails,Devise,我正在用Desive替换我应用程序中现有的身份验证系统,我遇到了一些麻烦 我在登录表单下面有以下四个链接: 注册(使用设计::注册控制器) 忘记密码了?(使用用户::密码控制器) 没有收到确认指示?(使用design::confirmationController) 没有收到解锁指示?(使用designe::UnlocksController) 所有这四个链接都会重定向回登录页面,我还不知道为什么。我在服务器日志中看到,这些链接正在命中相应的控制器,但它甚至没有呈现预期的页面——它只是重定向

我正在用Desive替换我应用程序中现有的身份验证系统,我遇到了一些麻烦

我在登录表单下面有以下四个链接:

  • 注册(使用
    设计::注册控制器
  • 忘记密码了?(使用
    用户::密码控制器
  • 没有收到确认指示?(使用design::confirmationController)
  • 没有收到解锁指示?(使用designe::UnlocksController)
所有这四个链接都会重定向回登录页面,我还不知道为什么。我在服务器日志中看到,这些链接正在命中相应的控制器,但它甚至没有呈现预期的页面——它只是重定向回登录页面

知道为什么会这样吗


编辑:以下是这些链接的代码(在
app/views/designe/shared/_links.html.erb
中):







您能告诉我们链接代码吗?您是否使用了正确的路径处理程序?@RichPeck Updated;代码在上面。在检查当前_用户(或等效用户)是否存在的某个位置执行操作之前,如果不存在,是否重定向?也许在你的ApplicationController@Doon我有
:当前用户
:确保用户已登录
的操作前
s。尝试单独或一起对它们进行注释,但仍然不起作用。请查看您的rails日志-我猜可能是您在\u操作之前使用了
:authenticate\u user而不添加
除非::designe\u controller?
这会导致designe controller重定向到登录页面,因为现在应该打开的路由需要身份验证。
<%- if devise_mapping.registerable? && controller_name != 'registrations' %>
  <%= link_to "Sign up", new_registration_path(resource_name) %><br />
<% end -%>

<%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %>
  <%= link_to "Forgot your password?", new_password_path(resource_name) %><br />
<% end -%>

<%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
  <%= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name) %><br />
<% end -%>

<%- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks' %>
  <%= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name) %><br />
<% end -%>