Я настраиваю модель самообращения пользователя для добавления друзей. У меня есть модель пользователя, которая has_many :friend_requests
. Когда пользователь добавляет друга, в модели friend_request
создается запись с user_id
и friend_id
.
Я могу перечислить все запрошенные friend_ids из модели friend_request
, но я не могу понять, как легко превратить эти идентификаторы обратно в имена пользователей без уродливой петли, как это в представлении:
<% for user in @user.friend_requests %>
<% @usr = User.where(id: user.friend_id) %>
<% @usr.each do |usr| %>
<%= usr.username %>
<% end %>
<% end %>
Это контроллер friend_request:
def index
@incoming = FriendRequest.where(friend: current_user)
@outgoing = current_user.friend_requests
@user = current_user
end
Есть ли более простой способ получить имя пользователя из таблицы Users, не просматривая все friend_ids в таблице friend_request