Rails应用中SCORM的数据模型



我想在我的Rails应用程序中部分实现SCORM标准。

我当前的数据模型具有以下结构。我有users,我有courses,我有连接表user_courses(每一行都是一些用户开始的课程的数据)。后一个表包含SCORM需要实现的所有属性(列)(最大分数,最小分数,原始分数等)

一切都很简单,直到我达到目标。它说符合scorm的LMS应该支持至少100个目标。如果只有4或5列,我将在我的user_courses表中再创建4或5列,但是创建100列没有任何意义,因为用户可能会使用5到10列。

处理这个问题的最好方法是什么?

目标与当前表的关系如何?

编辑:

我假设一个课程将有一个预先设定的目标,他们不需要单独跟踪每个用户的这些目标。

创建表:objective_id用course_id, objective_id

创建课程目标表

您可以将课程链接到course_objectives(一个课程有许多目标),并将目标链接到课程(一个目标可以属于许多课程)。这将允许您在课程之间重用共同目标。如果不是这种情况,那么你可以跳过course_objectives,只使用objective作为课程,一个课程可以有许多目标。

这有帮助吗?

如果您确实需要跟踪每个用户的进度或目标状态,您将需要在user_courses和course_objectives之间另一个表。

最新更新