当我有一组ID时,比如
ids = [2,3,5]
我表演
Comment.find(ids)
一切正常.但当id不存在时,我会得到一个例外.这种情况通常发生在我得到与某个过滤器匹配的ID列表时,然后我执行以下操作
current_user.comments.find(ids)
这次我可能有一个有效的 comments ID,但它不属于给定的用户,因此找不到它,我得到一个异常.
我试了find(:all, ids)
次,但它返回了所有记录.
我现在唯一能做的就是
current_user.comments.select { |c| ids.include?(c.id) }
但在我看来,这似乎是超低效的解决方案.
有没有更好的方法可以在不存在异常记录的情况下 Select ID in Array?