Quando ho una serie di ID, come
ids = [2,3,5]
e mi esibisco
Comment.find(ids)
tutto funziona bene. Ma quando esiste un ID che non esiste, ottengo un'eccezione. Ciò si verifica generalmente quando ottengo un elenco di ID che corrispondono ad alcuni filtri e che faccio qualcosa del genere
current_user.comments.find(ids)
Questa volta potrei avere un ID commento valido, che tuttavia non appartiene a un determinato Utente, quindi non viene trovato e ottengo un'eccezione.
Ho provato find(:all, ids)
, ma restituisce tutti i record.
L'unico modo in cui posso farlo ora è
current_user.comments.select { |c| ids.include?(c.id) }
Ma questa mi sembra una soluzione super inefficiente.
Esiste un modo migliore per selezionare l' ID nell'array senza ottenere eccezioni su record inesistenti?