поиск в массиве с использованием другого массива значений в ruby - PullRequest
2 голосов
/ 30 декабря 2010

Итак, у меня есть массив, который показывает, каким уровням разрешено делать вещи.

allowed = ["user", "admin"]

Есть еще один массив, который показывает, к каким группам принадлежит пользователь.лучший способ поиска в разрешенном массиве ЛЮБОЙ из групп, к которым принадлежит пользователь?Я знаю, что это легко, но я рисую настоящий пробел здесь ...

Ответы [ 2 ]

9 голосов
/ 30 декабря 2010

Просто &:

allowed & groups


0 голосов
/ 30 декабря 2010

Преобразовать в набор и сделать пересечение.

require 'set'

allowed = ["user", "admin"]
has = ["user", "print"]
puts(allowed.to_set.intersection(has.to_set)) # prints #<Set: {"user"}>
...