CakePHP-事件';日期及;时间-如何构建
TLDR:需要了解用户为事件添加日期和时间的最佳方式,以及如何构建数据库CakePHP-事件';日期及;时间-如何构建,php,cakephp,calendar,cakephp-1.3,date,Php,Cakephp,Calendar,Cakephp 1.3,Date,TLDR:需要了解用户为事件添加日期和时间的最佳方式,以及如何构建数据库 说明: 当用户添加事件时,他们需要能够选择事件的日期,无论它是否会重复每日/每周/每月,事件的开始和结束时间,还是“全天”,如果只是工作日或周末……等等。基本上,当你创建一个活动时,你可以通过谷歌日历做任何事情,他们也需要能够编辑它(如果这很重要的话)。但是,他们还需要能够添加另一个日期/时间-例如: 添加一个活动,在本周的周一和周三以及三周后,从晚上8点到10点。仅在本周的星期二和星期四,从下午6点到9点 我目前的想
说明: 当用户添加事件时,他们需要能够选择事件的日期,无论它是否会重复每日/每周/每月,事件的开始和结束时间,还是“全天”,如果只是工作日或周末……等等。基本上,当你创建一个活动时,你可以通过谷歌日历做任何事情,他们也需要能够编辑它(如果这很重要的话)。但是,他们还需要能够添加另一个日期/时间-例如: 添加一个活动,在本周的周一和周三以及三周后,从晚上8点到10点。仅在本周的星期二和星期四,从下午6点到9点
我目前的想法: 创建一个带有HABTM关系的“日期”表和我的“事件”表。当用户添加一个日期(具有repeat..etc等所有选项)时,它会运行一个函数来处理这些重复/限制…etc,并将所有日期添加到日期表中,其中包含它们的开始/结束时间 但是,如果他们想编辑它,我该如何管理它呢?因为它只创建了多个字段
问题/帮助?: 我在这方面做得对吗?我是CakePHP新手,很难找到最好的方法来做事情……我还没有寻求技术帮助(尽管不会拒绝)——现在,我只需要找到一个想法,找到一种最好的方法来组织一切,以便能够管理它。也许我需要一个“日期”表和“时间”表?可能是一个id引用“日期数据”表中许多单独行的“日期”表
提前非常感谢您的帮助/指导!您做得很好。让我来分享一下我的想法 如果我设计这个,我会有3个模型: 事件
- 身份证
- 用户id
- 描述
- 已创建(日期时间)
- 已更新(日期时间)
- 身份证
- 事件id
- 描述
- 开始(日期时间)
- 完(日期时间)
- 持续时间(时间,如果为空(NULL),则表示这是一个全天事件)
- 重复时间(例如,下午3:00表示每天下午3点)
- 重复日(对于每周/每月,如周一、周一和周二、周一到周五)
- 重复日期(对于每月,例如1表示每月的第1天,31表示每月的第31天或月末)
- 重复_周年纪念(针对每年的特定日期,例如每年12月25日)
- 身份证
- 附表1
- 开始(日期时间)
- 完(日期时间)
- 持续时间:02:00
- 开始日期:2011-05-01
- 完:2011-06-30
- 重复时间:13:00:00
- 复读日:01,07(星期日和星期六)
- 开始时间:2011-05-01 13:00:00
- 完:2011-05-01 15:00:00
我希望这会有所帮助。祝你的项目好运!非常感谢你的全面回答!一些简单的事情?你使用单独的“重复”字段与“重复类型”和“重复值”或更短的内容来完成计划的方式是否有好处?例如,“每月”和“1”将在第一个月是每月的,或者“每周”和“MTHF”将在周一、周二、周四和周五每周重复一次?再次感谢!@Dave是的,这实际上是个好主意。我只是在思考时写下了这一点,我从来没有做过这样的事情,所以我真的说不出哪一个更好。既然有这么多可能的“重复模式”,你可以把它们放在一个单独的位置建模,并在每次提出新模式时添加一个。到目前为止,这非常好,但事实证明很难获取数据。假设我要提取所有日期在X和Y日期之间的事件(及其日期)。我将如何使用/Event->Schedule->Date setup来完成该操作?