CakePHP 2.x CookBook 中文版 第三章 入门(三)
为什么80%的码农都做不了架构师?>>>
路由
多数情况下,CakePHP 的默认路由都能够很好地工作。对用户体验和搜索引擎兼容敏感的程序员将注意到 CakePHP 的 URL 映射到动作的方式。所以在这篇教程里我们仅仅快速的更改了一下路由。
路由技术的更多更高级的信息,请参见 路由配置 。
默认的,CakePHP 用 PagesController 回应对站点根的访问(例如 www.example.com),渲染一个叫 “home” 的视图。我们通过建立一条路由规则,用我们自己的 PostsController 来代替它。
可以在 /app/Config/routes.php 中找到路由配置。要注释掉或者删除定义默认路由的那一行。它看起来像是:
1 Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
一行将默认的 home 页关联给 URL ‘/’。我们想要用我们自己的控制器关联它,所以用如下行替换这一行:
1 Router::connect('/', array('controller' => 'posts', 'action' => 'index'));
这将把 PostsController 的 index() 动作关联给 URL ‘/’。
注解
CakePHP 还支持 ‘逆向路由’ ——如果通过``array(‘controller’ => ‘posts’, ‘action’ => ‘index’)`` 传递给期望得到数组的函数来定义如上路由,那么结果将是 ‘/’。这意味着总是用数组通过路由去定义要去的 URL 是个好主意,并能确保总是会指向同一个位置。
结语
创建应用程序这条路,将使你赢得超出以往的狂热幻想的和平、光荣、爱和金钱。容易,不容易?记住,这个教程只是一个基础。CakePHP 提供了更多的特性和更灵活的方式,简单起见,我们不希望这个教程覆盖那么多。使用手册的剩余部分作为构建富于特性的应用的指南。
现在已经建立了一个基于真实内容的基本的 Cake 应用程序。阅读 Cookbook 和 API 的剩余内容,开始自己的项目吧。
如果需要帮助,到 #cakephp 来看我们。欢迎来到 CakePHP!
建议后续阅读:
这些都是学习CakePHP的人将来通常要研究的共同任务:
- 布局: 自定义 web 站点的布局
- 元素 :包含和重用视图片断
- 脚手架: 创建代码前的原型
- 使用 Bake 生成代码 使用 Bake 生成基本的 CRUD 代码
- 简单授权验证和授权应用程序: 用户验证和授权教程
延伸阅读
- 一个典型的 CakePHP 请求
- CakePHP 约定
- 控制器约定
- 关于控制器命名的思考
- 文件名和类名约定
- 模型和数据库约定
- 视图约定
- 控制器约定
- CakePHP 的文件夹结构
- app 文件夹
- CakePHP 的结构
- 应用程序扩展
- 控制器扩展 (“组件”)
- 模型扩展 (“行为”)
- 视图扩展 (“助手”)
转载于:https://my.oschina.net/lht007/blog/115784
CakePHP 2.x CookBook 中文版 第三章 入门(三)相关推荐
- CakePHP 2.x CookBook 中文版 第四章 CakePHP 概述
CakePHP 概述 欢迎来到 CakePHP Cookbook,这是一本使用 CakePHP web 应用程序框架开发一块蛋糕的的手册! 本手册假定你了解 PHP,并且有面向对象编程(OOP)方面的 ...
- CakePHP 2.x CookBook 中文版 第七章 模型 之 保存数据
保存数据 CakePHP 会为保存模型数据制作快照.准备保存的数据使用如下基本格式传递给模型的 save() 方法: 1 Array 2 ( 3 [ModelName] => Array 4 ( ...
- CakePHP 2.x CookBook 中文版 第七章 模型 之 关联:将模型连接在一起
关联:将模型连接在一起 CakePHP 的一个非常强劲的特性就是由模型提供关系映射,通过关联来管理多个模型间的连接. 在应用程序的不同对象间定义关系是很自然的.例如:在食谱数据库,一个食谱可能有多个评 ...
- CakePHP 2.x CookBook 中文版 第六章 视图 之二
主题 主题可以使你快捷地切换页面的外观. 要使用主题,只需在控制器中指定主题名称: 1 class ExampleController extends AppController { 2 public ...
- CakePHP 2.x CookBook 中文版 第六章 视图
视图 视图是 MVC 中的 V. 视图负责为请求生成指定的输出.常用的格式有 HTML.XML 或者 JSON,不过用户可以下载的流文件和 PDF 文件也可以由视图层提供. CakePHP 为多数常用 ...
- CakePHP 2.x CookBook 中文版 第五章 控制器 之 请求和响应对象
请求和响应对象 在 CakePHP 2.0 中请求和响应对象是新的.在之前的版本中,这些对象是用数组来表示的,相关的方法分散在RequestHandlerComponent.Router. Dispa ...
- CakePHP 2.x CookBook 中文版 第五章 控制器
控制器 控制器是 MVC 中的 'C' .在应用了路由且正确的控制器被找到之后,控制器的动作(action)被调用.控制器将处理解释请求数据,确保正确的模型被调用,确保正确的输出或视图被渲染.控制器可 ...
- CakePHP 2.x CookBook 中文版 第五章 控制器 之 组件
为什么80%的码农都做不了架构师?>>> 组件 组件是在多个控制器中共享的逻辑包.如果你发现自己想要在控制器间复制粘贴某些东西时,你就应该考虑将一些功能包装在一个组件中了. C ...
- CakePHP 2.x CookBook 中文版 第七章 模型 之 删除数据
删除数据 CakePHP 的模型类提供了几种从数据库中删除记录的方法. delete delete(int $id = null, boolean $cascade = true); 通过 $id 删 ...
- CakePHP 2.x CookBook 中文版 第七章 模型 之 检索数据
检索数据 如前所述,模型层的一个角色是从多种存储中获取数据. CakePHP 模型类带有很多功能,帮助你搜索这些数据,排序,分页并且进行过滤.你将要使用的很多功能集成于模型的 Model::find( ...
最新文章
- 《程序设计解题策略》——1.6 利用左偏树实现优先队列的合并
- 差点被人类消灭的疾病,科学家说是苏联让它重新肆虐全球?
- linux配置ssh免密码,Linux下配置SSH免密通信 - “ssh-keygen”的基本用法
- 设计模式 - 建造者模式(Builder Pattern)
- C++ 暴力搜索String pattern search字符串模式的实现算法(附完整源码)
- 1191. K 次串联后最大子数组之和(最大子段和变形)
- 关于memcpy和memmove两函数的区别
- 【JavaScript】检测数据类型函数
- DB2单表排序查询报错分析及解决办法
- 总线制和多线制示意图_火灾自动报警系统 总线制与多线制的区别
- Android轻松实现语音识别
- 阶段3 1.Mybatis_10.JNDI扩展知识_1 补充-JNDI概述和原理
- 教你如何将中文转换成全拼
- I2C(smbus、pmbus)、SPI
- 分布式、分布式系统、分布式计算、分布式存储
- HSPICE物理模型仿真——添加variation时利用seed产生伪随机分布
- 什么是IPv6?IPv6与IPv4有什么区别?IPv6的安全?
- 7月11日自助装机配置专家点评
- 计算机桌面基本设置操作包括哪些,电脑技巧入门操作有哪些
- config.c 或者config.s 依照os的不同而config.X 的X也是不同的:
热门文章
- 计算机管理创建新用户,win7系统添加新用户名的方法和win7系统计算机管理中没有本地用户和组的解决方法...
- 路由器php系统时间设置时间设置时间设置时间设置时间设置,win7电脑提示系统时间设置有误请更新系统日期...
- 在计算机网络中通常所说的wlan是指,在计算机网络中,通常所说的WLAN是指()。 - 问答库...
- 容量耦合系数模型_使用Fluent电芯仿真模型进行结构设计优缺点分析
- cgi python_通读Python官方文档之cgi
- 机器学习理论与实战:逻辑回归
- 冯永昌:云计算与大数据时代的量化投资
- 用户研究三部曲:有关用户研究的战略思考
- sql进程意外终止_字节跳动五面都过了,竟然意外被刷了下来,问了hr原因竟说是。。。。。...
- 电脑太慢了最简单的办法怎么弄_修电脑不求人—最实用办公室电脑故障及解决办法,办公室人都说好...