flag_shih_tzu gem , return 任意键值相同

flag_shih_tzu gem , return same value for any key

我使用 flag_shih_tzu gem 并且在我的 User 模型中我包含了那行

include FlagShihTzu
has_flags  2 => :admin,
           3 => :moderator

我在用户 table 中也有一列 flags :

t.integer "flags", default: 1, null: false

但是当我将 flags 值设置为 23 时,这并不重要。它总是 return 我相同的值 admin?。例如:

user = User.first
user.flags = 2
user.save 

User.first.admin? 
# => true 

user = User.second  
user.flags = 3
user.save

User.second.admin?
# => true
User.second.moderator?
# => false 

是的!我找到了答案,我被分配了原始整数值,如 2 & 3

应该是user.admin = true