我的控制器中有'跟随'和'取消关注'的操作 显然,CanCan将不会识别这些操作,以便在执行这些操作时显示拒绝访问。
alias_action :follow, :unfollow :to => :read
我将此行添加到 ability.rb ,然后它现在正常工作。
但问题是当用户未登录时显示错误,如此
syntax error, unexpected ':', expecting keyword_end
alias_action :follow, :unfollow :to => :read
我只在用户登录时启用这些操作 我怎么能够?我应该添加什么 ability.rb ?
答案 0 :(得分:1)
答案 1 :(得分:1)
假设您的控制器是UsersController,您可以在ability.rb fie
中执行此操作def initialize(user)
user || = User.new
if user.roles.include?('tweeple') #Assuming the user with role tweeple can follow/ unfollow
can [:follow, :unfollow], User
end
end