У меня есть сайт обмена сообщениями, где любой пользователь может отправлять сообщения друг другу, но теперь есть ли способ показать только пользователей, которые находятся в той же команде, что и текущий пользователь?
Моя модель user.rb:
class User < ApplicationRecord
has_many :memberships
has_many :teams, through: :memberships
devise :database_authenticatable, :registerable, :confirmable,
:recoverable, :rememberable, :validatable
end
Модель моей команды.rb:
class Team < ApplicationRecord
has_many :memberships
has_many :users, through: :memberships
validates_uniqueness_of :name
end
Моя подписка.rb модель:
class Membership < ApplicationRecord
belongs_to :user
belongs_to :team
end
Мой вид "Контакты":
<li>
<% @user = User.find(current_user.id) %>
<% @all_teams = @user.teams %>
<% @all_teams.users.each do |user| %>
<%= user.name %>
<% end %>
</li>