2010-12-30 10 views
2

Also habe ich ein Array, das zeigt, welche Ebenen Dinge tun dürfen.Suche ein Array mit einem anderen Array von Werten in Ruby

allowed = ["user", "admin"] 

Es gibt ein weiteres Array, das anzeigt, welchen Gruppen ein Benutzer angehört.

groups = ["user", "crazy"] 

Was ist die beste Möglichkeit, das erlaubte Array nach einer der Gruppen zu durchsuchen, zu denen ein Benutzer gehört? Ich weiß, es ist einfach, aber ich zeichne ein echtes Leerzeichen hier ...

Antwort

9

Gerade &:

allowed & groups 


+0

Viel besser als meine Antwort. +1 –

+0

oh mein Gott ... lass uns alle so tun, als wäre das nie passiert ok ... ;-) Danke! – Ryan

+0

Wir werden - aber Sie müssen zuerst Nakilons Antwort akzeptieren. ;-) –

0

In ein Set konvertieren und eine Kreuzung machen.

require 'set' 

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