Может быть, вам нужен метод Enumerable#collect
:
@tags_string = @project.tags.collect(&:name).join(' ')
Collect пригодится, когда вы пытаетесь преобразовать один список в другой список одинакового размера, что в точности соответствует шаблону.
Часть &:name
означает «имя метода вызова для данного объекта» и может быть записана как { |t| t.name }
эквивалентно.
Библиотека Enumerable действительно великолепна, и вам следует ознакомиться с ней и ознакомиться с различными методами, поскольку она может сэкономить массу времени.