我正在使用CodeIgniter在PHP中创建日历应用程序。在主日历页面中,我的模型当前创建一个数组,每个索引在当前月份的某一天。那天是一个数组,包含用户当天可能拥有的任何事件。现在,我应该在控制器FIRST中构建日历数组,然后将其传递给模型,以便模型可以访问数据库并填写所有事件,或者我应该只创建日历数组并在模型中填写事件ALL ?
$ month = array('blank','blank','day1'=> array(event 1,event2),'day2'=> ...);
答案 0 :(得分:1)
这是一个棘手的问题,我不确定每个人都会这样做......但我认为这应该考虑在内:
getData
”,它应该只返回包含“真实”数据的数组,而不是包含“空”日的数据;另一方面,如果它被称为“getEventsByDay
”,那么每天返回一些东西是有意义的,甚至是空的$model->save($model->load())
这样的东西应该有效,我的意思是最后,没有“好的答案”:“这取决于”^^
我真的不知道在你的情况下我会做什么;我想这有点取决于应用程序的其余部分......我问自己的问题是“空白日的概念是否对我的模型有意义,或者只是演示问题?”
答案 1 :(得分:0)
我可能会设计它以便它可以“双向”工作。模型的输出应该是标准化的数组,可能是:
array('2009-08-05' => array('event' => ..., ...), '2009-08-06' => array(...));
即。只是纯数据。
默认情况下,它可以吐出当前月份,或从现在到+1个月之间的所有内容。它也应该采取一个参数来改变默认行为。要么采取一系列日期或范围。
我不知道为什么你的例子中的前两个条目是'空白'。如果您的阵列已经表示日历表中显示的月份,那么这将违背MVC。此类演示文稿问题将在视图中进行考虑。