Rails问题与身份验证

时间:2016-07-30 01:34:34

标签: ruby-on-rails

我正在使用rails构建我的第一个应用程序,我正在努力为每个用户提供一个帐户。它是一个简单的应用程序,用户创建一个帖子并保存。这篇文章可以在索引页面上看到。到现在为止我们还可以。当我退出时,我注册一个新用户并登录。当我进入索引页面时,我可以看到其他用户已保存的内容。我希望每个用户都有一个私有索引页面,没有人可以看到用户在他们的应用程序中保存了什么。我正在使用宝石'设备'来验证我的应用程序,但我不知道如何私有他们的帐户?任何想法?

2 个答案:

答案 0 :(得分:0)

您已实施身份验证。现在你需要建立授权。 您必须定义用户可以访问的数据。

看看:

CanCanCan

答案 1 :(得分:0)

使用设计验证技术,登录用户后,您可以编写一段干净的代码来呈现登录用户的帖子。您可以使用会话数据来执行此操作。 current_user帮助器方法返回与登录用户相关的模型类。通过设计,它确保在认证之后,它已准备好使用辅助方法。因此,可以避免没有具有该id的此类用户的错误。

#web/controller/post_controller.rb
before_filter :authenticate_user!

def list
  @posts = current_user.posts
end

然后,在列表视图中使用@posts来仅呈现登录用户的帖子。

<% @posts.each do |post| do%>
    <%= post.content %>
<% end %>
相关问题