[转]Laravel 4之控制器
控制器
通常Laravel控制器文件放在app/controllers/目录下。该目录已被Composer自动加载。控制器名称可以任意取,但一般以Controller为后缀,然后继承BaseController或Controller类,BaseController通常包括一些公用的控制器逻辑。
<?php// app/controllers/ArticleController.phpclassArticleControllerextendsBaseController{publicfunction showIndex(){returnView::make('index');}publicfunction showSingle($articleId){returnView::make('single');}}
在路由中调用控制器
// app/routes.phpRoute::get('index','ArticleController@showIndex');
控制器中使用命名空间
// app/routes.phpRoute::get('index','Namespace/ArticleController@showIndex');
在控制器路由中指定名称
Route::get('foo', array('uses'=>'FooController@method','as'=>'name'));
使用URL::action方法获取一个控制器操作的链接
$url = URL::action('FooController@method');
使用currentRouteAction方法获取当前控制器操作的名称
$action =Route::currentRouteAction();
控制器过滤器
Route::get('profile', array('before'=>'auth','uses'=>'UserController@showProfile'));
在控制器内部定义过滤器
classUserControllerextendsBaseController{publicfunction __construct(){$this->beforeFilter('auth');$this->beforeFilter('csrf', array('on'=>'post'));$this->afterFilter('log', array('only'=>array('fooAction','barAction')));}}
RESTful 控制器
使用简单的REST命名规范,轻松定义单个路由去处理控制器的每个操作。避免为每个控制器动作绑定路由。定义一个 RESTful 控制器
Route::controller('article','ArticleController');
ArticleController类中的方法以HTTP动作为前缀,如
<?php// app/controllers/Article.phpclassArticleextendsBaseController{publicfunction getCreate(){returnView::make('create');}publicfunction postCreate(){// Handle the creation form.}}
如果你的控制器操作名称包含多个单词,你可以使用 "破折号" 语法来获得URI。例如,下面UserController控制器中的这个操作会用来应答users/admin-profileURI:
publicfunction getAdminProfile(){}
结束
[转]Laravel 4之控制器的更多相关文章
- Laravel 5.2控制器--RESTful 资源控制器
laravel的资源控制器 一.创建资源控制器 在命令行上,创建一个新的资源控制器 php artisan make:controller TestController --resource 然后在你 ...
- laravel路由与控制器(资源路由restful)
目前我们大致了解了laravel下,在开始一个Http程序需要先定义路由.之前的例子中,我们的业务逻辑都是在路由里实现,这对于简单的网站或web应用没什么问题,当我们需要扩大规模,程序变得复杂,分层的 ...
- Laravel路由和控制器的绑定
路由和控制器的关系 路由文件地址在\app\Http\routes.php,我们来看两种不同的路由. Route::get('/', function () { return view('welcom ...
- laravel如何自定义控制器目录
默认控制器在App\Http\Controllers目录下,如何自定义目录呢? 首先我们看一下laravel的请求周期 我们看一下服务提供者RouteServicePrivder文件中的一个函数 /* ...
- Laravel 的HTTP控制器
简介# 除了在路有文件中以闭包的形式定义所有的请求处理逻辑外,还可以使用控制器类来组织此类行为,控制器能够将相关 的请求处理逻辑组成的一个单独的类,控制器被存放在app/Http/Controller ...
- Laravel 5.2控制器--为什么命令行创建控制器的时候会报错?
今天我遇到过一种情况:就是之前创建的控制器名称想更改(仅仅只是大小写问题而已),然后用命令行重新创建新的名称的控制器. 结果就报错了? [ReflectionException] Class App\ ...
- laravel里面的控制器笔记
看了下教程,总结了下,大概分两种 一般的controller restful的controller 单独绑定action的route为 Route::get('user/{id}', 'UserCon ...
- Laravel中创建控制器
<?php /** * Created by PhpStorm. * User: chuang * Date: 17-1-14 * Time: 下午4:29 */ namespace App\H ...
- Laravel 实现多级控制器(实现Api区分版本)
路由: Route::get('', 'v1\\UserController@index'); 文件夹分层 User控制器命名空间: namespace App\Http\Controllers\v1 ...
随机推荐
- linux上网络配置不生效的怪异现象处理
1.在Linux上.在ifcfg-eth0上设置IP地址等信息 具体配置信息例如以下已 [root@rac01 Desktop]#more/etc/sysconfig/network-scripts/ ...
- js jsp 时间 日期 控件 插件 简单 实用
js时间控件一般都是找网上的用,这东西平常很少涉及到,一用到找起来却烦死人,不是没用就是太复杂,今天向大家推荐一个简单实用的控件,该控件在不断更新,而且有专门的网站对它进行维护,所以值得一看. 先说它 ...
- LINUX进程上锁查看方法
jps -l 获取进程列表 jstack -l 8672 查看详细信息 查找启动任务的class 查看状态
- samba错误
1.session setup failed: NT_STATUS_LOGON_FAILURE 该错误表示用户有误, 可能是用户不存在, 也有可能是密码错误, 或者用户只是在samba和系统的用户中的 ...
- iOS中如何获取image.xcassets中的启动图片
/** * 获取启动图片 */ +(UIImage *)launchImage{ NSString *imageName=@"LaunchImage-700"; if(iphon ...
- python之面向对象(一)
python编程分为三个阶段: 面向过程编程:根据业务逻辑从上到下垒 函数式编程:将某功能进行函数封装,使用时调用函数即可,减少代码重复量 面向对象编程:对函数进行分类和封装 理论上我们是比较鄙视面向 ...
- .net中的特性
本文来之:http://hi.baidu.com/sanlng/item/afa31eed0a383e0e570f1d3e 在一般的应用中,特性(Attribute,以称为属性)好像被使用的不是很多. ...
- 未能加载文件或程序集 system.data.sqlite 完美解决
错误提示如下图所示: 解决办法: 使用SQLITE 预编译的静态链接DLL 下载地址:http://pan.baidu.com/s/1kT5i8bP
- Palindrome Number 回文数
判断一个数字是否是回文数,尝试不用其他额外空间. 注意: 负数也有可能成为回文数吗? 如果你想让int转为string,注意不用其他空间这个约束. 你也可以翻转一个int,但是有可能会溢出. ...
- Oracle System密码忘记 密码修改、删除账号锁定lock
一下转自http://www.cnblogs.com/yjhrem/articles/2340149.html 运行cmd命令行 录入 sqlplus /nolog 无用户名登录 conn /as ...