我正在努力让没有帐户/未登录的人可以看到用户列表和所有用户帖子..
在我的 users_controller.rb 我有
class UsersController < ApplicationController
before_filter :signed_in_user,
only: [:index, :edit, :update, :destroy]
before_filter :correct_user, only: [:edit, :update]
before_filter :admin_user, only: :destroy
def index
@users = User.paginate(page: params[:page])
end
def show
@user = User.find(params[:id])
@microposts = @user.microposts.paginate(page: params[:page])
end
我猜测 before_filter :signed_in_user 是它的原因,所以只有登录用户才能访问用户列表/查看用户配置文件。如何在不出错的情况下更改它?
目前,当我删除第 3 行的 :index 部分时,出现以下错误。
未定义的方法“管理员?” 对于零:NilClass
这是 /app/views/users/_user.html.erb 的第 4 行
<li>
2: <%= gravatar_for user, size: 52 %>
3: <%= link_to user.name, user %>
4: <% if current_user.admin? && !current_user?(user) %>
5: | <%= link_to "delete", user, method: :delete, confirm: "You sure?" %>
6: <% end %>
7: </li>