【发布时间】:2021-10-18 21:53:36
【问题描述】:
您好 Django REST API 专家,
我们正在构建大学课程门户,其中应用提供各种用户类型,例如使用 DJANGO/REACT 的教授、学生和管理员。我们正在使用 REST API 来连接后端和前端。
所以,到目前为止,我们能够执行一些基本操作,而且效果非常好。但是现在我需要这个小组的帮助来做以下事情:
当学生注册课程时,它会生成一份确认文件,说明课程描述以及需要学生签署的前提条件,以确保学生承认他们满足这些要求。
为了做到这一点,我们有以下几点:
- 每门课程的模型,其中包含每门课程的内容、描述和先决条件。
- StudentCourseAck 模型,其中包含对课程的 FK、签名布尔字段、用于存储签名文档的二进制字段。
用户流量:
- 学生登录门户,
- 选择生成 StudentCourseAck 条目的课程。
- 让学生审阅文件并签署文件(在客户端使用签名板)。
- 签名以 PDF 格式存储(作为二进制字段)。
到目前为止一切都很好......
现在我们想要增强功能集,允许管理员通过电子邮件向学生发送 studentcouseack 文档的链接,以防在课程开始前未签名。此外,此链接应仅在 48 小时内有效,否则将过期。
所以我们需要一些帮助来增强这些功能集,如下所示:
- 当前 API 暴露给前端,例如:mysite.com/courseack/studentid/documentid
- 但是,我们希望对此进行加密,因此链接如下所示:mysite.com/uniqueid
- uniquid 映射到 /studentid/documented 的位置
所以我有以下设计问题:
- 问题 1:我们是否应该增强 StudentCourseAck 来存储每个文档的 UUID?
- 问题 2:如果我为每个文档存储 UUID,如何使其在生成后过期?
- 问题 3:当学生完成签名后,我需要将文档更新到数据库中,以确保将正确的文档保存到正确的学生档案中,那么如何确保此安全要求。
非常感谢一些专家意见或指导,以便我们继续实施此功能。任何其他更简单、更易于维护的替代方案。
再次感谢您的时间和考虑。
谢谢。
【问题讨论】:
标签: django django-models django-rest-framework django-react