— 文章所属小组: CakePHP
CakePHP应用开发 第三章 简单应用的开发实例(9)
  • Moon.Wong
  • 评论(0)

使时间和日期更具可读性

当我们罗列出所有事项清单时,你可能已经注意到了事项的创建时间和修改时间对于普通用户而 言根本不具有可读性。我们想用一种更友好的形式来展示时间和日期,以便用户能快速的理解事项添加和最后修改的时间。为了实现这点,我们将会使用 CakePHP的另一个内置的助手:时间助手(Time Helper)


动手时间:使创建时间和修改时间更具可读性。

1,我们可以在tasks_controller.php文件中的$helper数组中添加Time,将时间助手添加进Tasks控制器中:

var $helpers = array('Html', 'Form', 'Time');

2,打开/CakeTooDoo/app/views/tasks目录下index.ctp文件,然后将<?php echo $task['Task']['created'] ?>代码用如下代码替换掉:

<?php echo $time->niceShort($task['Task']['created']) ?>

3,同样的,将该文件中的<?php echo $task['Task']['modified'] ?> 代码用如下代码替换掉。

<?php echo $time->niceShort($task['Task']['modified']) ?>

怎么回事?

这里,我们向Tasks控制器中添加了一个名为时间助手的CakePHP内置助手。这个内 置的时间助手可以帮助我们显示相关数据的时间和日期。我们使用了时间助手的一个名为niceShort()函数,然后,将创建时间和修改时间传送给该函 数,以便让CakePHP以一种更为友好的格式来显示这些时间,见下面截图:


制作Cake待做事项的主页

事情已经做的差不 多了。为了使得Cake待做事项各个功能更容易访问,我们将创建一个主页。这个主页会向用户介绍Cake待做事项的所有功能,也可以让用户从该页面快速访 问其他页面。

主页无需任何逻辑操作,因为主页只是一个静态页面。到目前为止,我们创建的所有页面都一个 对应的操作和视图。因为主页无需任何控制逻辑,因此它也无需对应的控制器及其操作。

对于那些无需控制器的页面,Cake提供了一个成为页面(pages)的控制器。我们只要 简单的为对应页面添加一个视图即可,无需另外添加任何控制器及其操作。


动手时间:Cake待做事项主页

1,打开 /CakeTooDoo/app/views/pages 目录,然后创建一个名为home.ctp的文件。

2,在我们刚刚创建的home.ctp文件中,添加如下代码:

<h1>Welcome to CakeTooDoo</h1>
<p>CakeTooDoo is a simple but useful application to keep a record of all the things that you need to do. Using CakeTooDoo,you can:</p>
<ul>
<li><?php echo $html->link('List all your tasks',array('controller' => 'tasks', 'action'=>'index')); ?></li>
<li><?php echo $html->link('List your completed tasks',array('controller' => 'tasks', 'action'=>'index','done'));?></li>
<li><?php echo $html->link('List your pending tasks',array('controller' => 'tasks', 'action'=>'index','pending')); ?></li>
<li><?php echo $html->link('Add new Tasks', array('controller'=> 'tasks', 'action'=>'add')); ?></li>
<li>Edit tasks</li>
<li>Delete tasks</li>
</ul>

3,在浏览器中打开http://localhost/CakeTooDoo/这个链接, 查看Cake待做事项的主页。


怎么回事?

我们创建了一个名为home.ctp 视图文件,这个视图文件罗列出了Cake待做事项的所有功能,并添加了相应的连接。因为这个页面无需任何对应的控制器,我们将该文件放置在视图目录下的 Pages文件夹下。

那些没有对应控制器及其操作的页面都应该存放与pages目录之下。如果想要访问这些页 面,我们只需要将浏览器指向如下形式的连接即可http://localhost/CakeTooDoo /pages/<视图文件名称>,对于我们刚刚创建的主页,我们可以通过http://localhost/CakeTooDoo /pages /home下面的这个链接访问。

但是你注意到,但我们打开 http://localhost/CakeTooDoo/这个地址是,浏览器显示的就是主页,这是因为Cake将pages目录下的home.ctp视 图作为应用的默认页面。因此,一旦指向的链接中没有控制器及其操纵时,Cake会将浏览器指向默认的主页(/views/pages /home.ctp),在下面的截图中你会看到Cake待做事项的新主页的模样。


小结

这一章节过山车式的带你快速了解了CakePHP一些重要的方面。我们了解了我们是如何创 建一个名为Cake待做事项的应用来。它可以管理待做事项清单,罗列出所有事项,添加事项,编辑事项,删除事项。而且它也具备一些更酷的功能。

这一章也向我们展示了如何遵循Cake的规则,创建数据库,以及如何配置Cake以便 Cake能正确使用。这一章节也讨论了如何创建模型,控制器,和视图,以及为了使其一道能正常的工作,我们需要遵循怎样的规则。

这一章节里,我们了解到了模型的一些重要的函数,如查找函数,保存函数,删除函数,我们也 看到了控制器的一些函数的用法,如set和rediret。除此之外我们也介绍了时间助手和HTML表单助手,我们了解到这个助手的函数是如何让视图的显 示更为简单的。

随后,我们简要的了解了如何使用Cake内置的数据验证功能。最后,我们了解了页面控制器 的使用,以及如何用来创建静态的页面

最重要的是,这一章节给我们展示了使用Cake制作质量和结构良好的网页应用的确是“小菜 一碟”!但是,这只是CakePHP带来的诸多好处的小小一部分,继续阅读,你马上就会成为一个专业的烘烤大师。


 

前一页|目录|下一页

填写登录信息
用户名
密码