【发布时间】:2018-05-20 14:14:26
【问题描述】:
我正在为客户开发 LMS。顶层表是证书。下一层是课程,再往下是活动。 Activity 可以是视频、幻灯片或测验。
存储这些关系很容易而且不是问题。
如果学生/用户注册了证书,我需要通过证书跟踪该学生的进度。所以我需要一个唯一版本的证书和所有的孩子,这样我就可以知道每个活动、课程和证书的进度。另一个考虑因素是学生可以多次完成证书。
我用user_id, certificate_id, course_id, activity_id 尝试了一个进度表并完成了,但它不能处理多次注册证书。在同一张表中,我尝试引用certificates_users_id 以尝试为该用户和证书建立唯一的顶级引用,但我无法将其连接在一起。
我希望能够获取该用户的 In Progress 证书,并确切知道该用户已完成其中的哪些活动和课程。
【问题讨论】:
-
好吧,我猜你会有一个注册表,其中可能包含 certificate_id、user_id 和注册日期——假设同一个用户不能两次注册相同的课程,同时。
标签: mysql cakephp database-design cakephp-3.0