CanCan错误:“undefined method role?”与Devise

7
2个回答

14

您需要将其添加到用户模型中 (app/models/user.rb)

class User < ActiveRecord::Base
  has_and_belongs_to_many :roles
  devise :database_authenticatable, :confirmable, :recoverable, :rememberable, :trackable, :validatable

  def role?(role)
      return !!self.roles.find_by_name(role.to_s.camelize)
  end
end

@Sinetris 谢谢您先生。我有两个问题:(i) 双感叹号 "!!" 是什么意思?(ii) 如果我在用户控制台中,那么 User.roles 应该会出现一个活动记录集合,这是正确的吗?感谢您的帖子。 - BenKoshy

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接