Я создаю базовый c форум как приложение, использующее ruby на рельсах. У меня есть пользователи, которые могут создавать группы. У каждого пользователя есть несколько групп, и каждая группа принадлежит пользователю. Проблема в том, что я также хочу, чтобы у пользователя была возможность подписаться на множество групп и чтобы у групп было много подписанных пользователей. Я не могу понять, как этого добиться.
Вот идеальный код, который я хотел бы написать:
class Group < ApplicationRecord
#working code
belongs_to :user
has_many :subscriptions
#Non working code
has_many :subscribed_users, through: :subscriptions
end
class User < ApplicationRecord
#working code
has_many :groups
has_many :subscriptions
#Non working code
has_many :subscribed_groups, through: :subscriptions
end
class Subscription < ApplicationRecord
belongs_to :user
belongs_to :group
end