如何在IRB中找到两个数组中的匹配项?

Tri*_*rip 4 ruby arrays ruby-on-rails

出于某种原因,我无法弄清楚这一点.但基本上我想与模型进行比较,看看他们是否有任何匹配的电子邮件.这是我的尝试,但这不是出于某种原因工作的.

>> CardReferral.all.select{|cf|cf.email == CardSignup.all.collect{|cs|cs.email}}
Run Code Online (Sandbox Code Playgroud)

我可以以某种方式返回对象..

Mat*_*ggs 16

CardReferral.all.map(&:email) & CardSignup.all.map(&:email)
Run Code Online (Sandbox Code Playgroud)

来自rdoc

array&other_array Set Intersection - 返回一个新数组,其中包含两个数组共有的元素,没有重复项.

[ 1, 1, 3, 5 ] & [ 1, 2, 3 ]   #=> [ 1, 3 ]
Run Code Online (Sandbox Code Playgroud)