Вы действительно должны использовать options_from_collection_for_select
для этого.
Это, чтобы процитировать документы:
Возвращает строку тегов параметров, которые были скомпилированы путем итерации по коллекции и присвоения результата вызова value_method в качестве значения параметра и text_method в качестве текста параметра.
Таким образом, вы можете просто использовать:
<%= select_tag 'recipients', options_from_collection_for_select(User.all, :id, :username, @chosen_recipient.id), class: 'form-control chosen-it' %>
Это встроенный помощник, предназначенный для того, чтобы делать то, что вы воссоздаете, поэтому будет отлично работать.
Аргументы - это набор для создания параметров, метод для вызова значения, метод для текста параметров и выбранного значения.
Надеюсь, это поможет - дайте мне знать, как вы поживаете или если у вас есть какие-либо вопросы.