CourseFavourite -- which user accessed which course when, only displayed to user for convenience; user UserId course CourseId OnDeleteCascade OnUpdateCascade reason FavouriteReason lastVisit UTCTime UniqueCourseFavourite user course deriving Generic CourseNoFavourite user UserId course CourseId OnDeleteCascade OnUpdateCascade UniqueCourseNoFavourite user course deriving Generic