gpt4 book ai didi

ruby-on-rails - Rails has_many :through association

转载 作者:数据小太阳 更新时间:2023-10-29 07:32:07 27 4
gpt4 key购买 nike

我正在尝试创建一个 Rails 应用程序,用户可以在其中创建事件并邀请参与者加入其中,并且需要您的帮助!我一直在兜圈子,尝试了一些东西,但似乎根本不对,这现在让我发疯了!!我正在使用 Rails 4。

您将如何设置事件模型?

User
has_many :events through :meeting //for the participants?
has_many :events // for the organizer?

Event
belongs to :user
has_many :participants, class_name: "User"


Participant
belongs to :user
has_many :events through :meeting

Meeting
has_many :participants
has_many :events

这有意义吗?我需要参与者模型还是我只是过度设计了它?我想我有点困惑,组织者是用户,参与者也是用户, session 需要组织者和参与者,所以不太清楚如何使这项工作...

另请阅读我只能在添加参与者时建立 session 关系。那是要走的路吗?谢谢!

最佳答案

不,您不需要 Participant 模型:

User
has_many :meetings
has_many :events, through: :meetings

Event
has_many :meetings
has_many :participants, through: :meetings, class_name: "User"

Meeting
belongs_to :user
belongs_to :event

User 的实例你可以做:

user.events # => List of Events

Event 的实例中,您可以:

event.participants # => List of Users

has_many :through Ruby Guides 中的解释与您想要做的类似,请查看。

关于ruby-on-rails - Rails has_many :through association,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22802445/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com