[英]Rails - many-to-many association
我的教育应用程序使用单个数据库,并拥有许多用户。 我有以下问题:
当user1
完成课程时(课程模型的列以boolean finished = true
),对于所有其他用户,该课程结束( finished = true
)。
我希望本课程对user1完成,但对所有其他用户而言未完成。
换句话说,如何将user1
完成的数据库更改与user2
完成的更改区分开?
提前致谢。
为此,您可以使用具有has_many :through
或has_and_belongs_to_many
关联的users_lesson_progresses
表(例如, users_lesson_progresses
。
在此处查看文档https://guides.rubyonrails.org/association_basics.html
这个想法是在users_lesson_progresses
表中,对于每对用户和课程,您将有一个单独的行。 用户完成课程后,您将为此特定用户和该课程创建一行,并将completed
列值设置为true。 或用户之后开始设置一个教训state
列users_lesson_progresses
表started
,他完成后,可以设置列值来finished
。 其他任何用户和任何其他课程均相同。 那是一个例子。 您的方法可能有所不同,但主要思想是相同的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.