我正在使用Core Data为iOS / Swift编写测验游戏。
我按照图表
拥有以下实体 Challenge
有很多Questions
IE:Easy有10个问题
我被困的地方是我正在努力构建的一个功能:
问题:如何为Core数据中的测验完成进度建模?
我想我需要另一个名为PlayerAnswers
的实体,但不确定哪些字段需要在那里记录正确的信息。
答案 0 :(得分:0)
您建模了用于存储Challenge的一般表示的对象。现在您需要添加包含挑战进度的表格。如果挑战问题不可变,最简单的问题将包含。如果用户不能在一次挑战中跳过问题,那就没关系了
playerId | challlengeId | challengeProgress | challengeScore 强>
如果您需要每个问题状态和挑战的总分,您将需要存储所有用户的答案(就SQL表而言)
表1 gameId | playerId | challlengeId 强>
gameId代表用户尝试,如果他可以为一次挑战进行多次尝试
表2 gameId |回答| isCorrect |得分
此表存储所有游戏的所有答案。我们可以通过状态获取所需gameId的答案
所以在这种情况下,就核心数据而言,你需要添加2个实体:与用户有一对一连接的游戏以及从游戏中有一对多连接的挑战和答案