当前位置 : 主页 > 编程语言 > ruby >

ruby-on-rails – 仅在用户登录时显示页面?ruby/设计

来源:互联网 收集:自由互联 发布时间:2021-06-23
我正在构建一个带有rails的应用程序和用户身份验证我正在使用Devise. 除非用户已登录,否则我想知道如何限制对某些页面的访问. 我猜我必须更改我的特定页面控制器上的代码,但我不知
我正在构建一个带有rails的应用程序和用户身份验证我正在使用Devise.

除非用户已登录,否则我想知道如何限制对某些页面的访问.
我猜我必须更改我的特定页面控制器上的代码,但我不知道如何.

此外,如果未经过身份验证的用户想要访问该页面,我该如何限制它?

非常感谢!

您可以在页面上执行以下操作:

<% if user_signed_in? %>
  <div> show content here </div>
<%else %>
  <p>Please Sign Up or Sign In to view the content.</p>

  <h2><%= link_to "Sign up", new_user_registration_path%>

<% end %>

希望能帮助到你!

或者在控制器内部设置before_action:

before_action:authenticate_user!

official documentation有详细信息

网友评论