Tengo una tabla de usuarios con un campo de máscara de bits que tiene una máscara de permisos. Localmente, puedo determinar si un usuario tiene cierto permiso al hacer una máscara de bits (UserPermissions&Perm)==Perm
. Sin embargo, deseo poder emitir un find_by_mask
o algo similar, tal vez usando un :conditions
, pero parece que no puedo averiguar cómo puedo consultar la base de datos para recuperar una lista de usuarios con una máscara de permisos coincidente.Búsqueda por máscara de bits en ActiveRecord
¿Alguna idea de usar ActiveRecord?
Específicamente esto debe trabajar utilizando SQLite y PostgreSQL
Gracias por la información bit a bit. Pensé en usar booleanos, pero tengo unos 15 permisos y podría agregar más más tarde. Usar una máscara de bits es mucho más limpio que tener más de 15 booleanos en la tabla. –