У меня есть таблица пользователей (модель данных), которая имеет столбец с именем permission
, который содержит значение битмаски.Ruby datamapper - поиск по значению флага
property :permission, Flag[:perm1, :perm2, :perm3]
Я хочу, чтобы найти всех пользователей, у которых есть определенные права доступа, такие как perm1 и perm2
так я называю,
User.all(:permission => [:perm1, :perm2])
Это делает запрос
select * from user where permission = 3
это неверно. в то время как правильный запрос должен быть (потому что это тип - flag
)
select * from user where permission &1 != 0 and permission &2 != 0
ли кто-нибудь в рубиновой DataMapper, как сделать вызов поиск значений флага.