我正在制作一个使用带有 Devise 和 CanCan 的 Rolify gem 的 Rails 应用程序。
像这样运行 rolify 生成器
rails g rolify:role
像这样将 rolify 方法放在 Users 模型的顶部
class User < ActiveRecord::Base
rolify
除了创建 Role.rb 模型。
class Role < ActiveRecord::Base
has_and_belongs_to_many :users, :join_table => :users_roles
belongs_to :resource, :polymorphic => true
scopify
end
我还没有用 rolify 做任何其他事情。但是,当我尝试在 rails 控制台中加载用户时,出现以下错误。
>> User.all
NameError: undefined local variable or method `rolify' for #<Class:0x007f813d32ce48>
我在用着Rails 3.2.12
红宝石版本
ruby -v
ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-darwin12.2.0]
我认为这不是预期的行为。任何人都可以提出解决方案。如果我无法在控制台中访问 User 模型,我就不值得使用 rolify。