我正在构建一个项目时间跟踪器,并且需要一些有关如何记录每周时间的指导。
我基本上有两个表:projectTable和weeklyReportTable,具有一对多关系。
ProtectTable将保留所有正在处理的项目以及其他信息(例如所有者,状态等)的记录。
weeklyReportTable应该跟踪该项目的每周活动,并且每个项目每周只能有一个条目。用户每周将记录小时数和该周发生的活动报告。
用于更新项目状态的UI将由面板组成,该面板列出了登录用户的所有项目以及用于记录时间和活动的输入字段。用户将可以使用一个小部件来向前和向后移动以选择他们要记录其活动的星期。
问题:什么是确保WeeklyReportTable中每个项目每周只有一个条目的最佳方法?如果用户试图在一个已经存在的项目上记录活动一周,我不想创建新记录,而是更新现有记录。
答案 0 :(得分:1)
答案 1 :(得分:0)
如果您有一个项目开始日期,我假设您想在创建项目时提前创建它,直到结束日期。否则,您可以在他们单击特定的一周时创建它,但是您可能希望锁定该部分,以确保在两个用户无法单击时导致重复的值。或者,您可以在创建之前写一个触发器来检查重复项,但是我仍然想锁定它,因为关系的基数与通过UI表达的基数不同。如果您有一个自定义数据库,请在日期+项目ID上指定唯一索引,只要您使用相同的日期(您所在的星期几),就应该很好