Используйте метод map
:
Возвращает новый массив с результатами выполнения блока один раз для каждого элемента в enum.
def recruits_names
self.referrals.map { |r| r.display_name }
end
[Обновить] Как отметил Стален в комментариях, этот пример может быть сокращен еще больше до:
def recruits_names
self.referrals.map(&:display_name)
end
Для любопытных это потому, что &
вызывает to_proc
для объекта, следующего за ним (при использовании в вызове метода), и Symbol
реализует to_proc
для возврата Proc
, который выполняет метод, обозначенный символом для каждого значения, переданного блоку (см. документация ).