提问人:dabljues 提问时间:5/25/2021 最后编辑:dabljues 更新时间:5/25/2021 访问量:121
将任务信息存储在数据库中
Store task info in database
问:
假设我有一个数据库,用于存储用户任务。
为简化起见,假设一个任务具有:
- 编号
- 状态(新建、待办事项、进行中、完成、已拒绝)
- 描述
- 所有者/创建者
现在,我想要实现的是,当用户完成任务时 - 将其设置为“完成”或“已拒绝”,我希望用户提供有关该状态更改的一些信息。我想象一个带有两个字段的弹出窗口:一个可以从“完成/拒绝”状态中进行选择,另一个是文本字段区域,用于填写原因(如果您愿意)。
我在这里遇到的问题是:如何存储有关任务完成的信息?
我的想法是创建一个表格,其中将有:task_completions
- 编号
- task_id
- 注释(varchar 或其他)
现在的问题是:当我从数据库中为用户加载任务并且我看到它已完成(再次,完成或拒绝)时,我需要加载有关任务完成的信息。因此,这将导致两个 API 调用:
- 获取任务
- 获取task_completion,在哪里
task_completion.task_id == task_id
当然还有另一种方法 - 我可以将task_completion字段添加到我的表中。当然,让它可以为 null,因为在任务完成之前,它不会被任何东西填充。然后我就不必进行两次 API 调用,因为当使用 Django 序列化程序(或类似的东西)时,我将能够将字段从普通数字 (id from ) 列“扩展”为包含有关完成信息的完整嵌套 JSON(id、task_id、注释) - 我只需要调用 .然后我甚至不必提供表中的字段。task
task_completion
task_completion
get task
task_id
task_completion
所以总结一下,我认为我有 3 个选择:
task
和 tables,其中 table 包含列 - 两个 API 调用task_completion
task_completion
task_id
task
和表格,其中表格包含列 - 如果我做对了,一个 API 调用task_completion
task
task_completion_id
task
和表,其中表包含列,表包含一列 - 我猜仍然是一个 API 调用 - 但是在这些表中同时包含这两个列是否有意义?task_completion
task
task_completion_id
task_completion
task_id
答: 暂无答案
评论
comment
task
task
task_completion
task_id
task
task
task_status_history