学渣也要搞 laravel(3)—— HTTP控制器
1. laravel 控制器在app/Http/Controllers/ 下,你会看到里面有一个Controller.php ,之后我们创建的控制器都是继承这个总控制器的、创建控制器只需要在这里面添加一个文件 比如 IndexController.php 这个文件,在里面添加:
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; class AdminController extends Controller{ }
即可,然后举个栗子:添加 index方法
public function index(){ return view('welcome'); }
修改添加路由 Routes.php:
Route::get('/test','IndexController@index');
'IndexController' 这个是控制器的名称、艾特 后面的即控制器里面的 index 方法、 然后在浏览器地址栏后添加 /test 即可看到同样的欢迎页面
2. 创建控制器,比较方便的方法就是 使用artisan命令:(如何你没有安装composer 请查看 安装篇)
命令行cmd进入到laravel项目的主目录,输入:
php artisan make:controller AdminController
在次查看Controllers 下的控制器就会 多了一个AdminController 控制器,而且里面的引用和继承关系都写好了。还是非常方便的、查看: Artisan命令大全 。
3. 我想在Controllers下的文件夹里面再创建一个文件夹里面再创建一个控制器。那我该怎样做?
首先例如先创建一个Admin 的文件夹 并把上面创建好的 IndexController.php 剪切到里面
现在去浏览器运行的时候它会提示 Class App\Http\Controllers\IndexController does not exist 这个IndexController 控制器不存在,那我先去把路由的引用的控制器路径改一下:
Route::get('/test','Admin\IndexController@index');
注意 正反 斜杠。
再次运行:Class App\Http\Controllers\Admin\IndexController does not exist 报错变了、提示Admin\IndexController 这个控制器不存在。打开Admin/IndexController.php 修改为以下内容:
<?php namespace App\Http\Controllers\Admin;//修改为当前文件的位置 use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller;//引用Controllers下的Controller总控制器,若不应用会报错提示Controller控制器不存在 class IndexController extends Controller { // public function index(){ return '这是后台'; } }
然后 注意路径的大小写,斜杠的正反。就是因为引用控制器的时候 APP 这个不小心都大写了。找了半个小时。真是日了狗了、
再次运行,就正常啦: 若你的不正常的话,看看路由的地方改了没。
最新文章
- BZOJ 1565: [NOI2009]植物大战僵尸
- 安装spark ha集群
- 怎么在MVC中使用自定义Membership
- android常见问题
- Android 动态获取ListView的高度
- RESTful WebService入门
- session超时和cookie过期
- SaaS系列介绍之四:我国SaaS市场发展
- C# WinForm判断Win7下是否是管理员身份运行
- rapid-framework脚手架快速搭建springMVC框架项目
- Dynamics 365 for CRM:CRM与ADFS安装到同一台服务器,需修改ADFS服务端口号
- MVC Form 表单 提交 集合 及 复杂对象
- 操作docker容器
- 总线复习之SPI
- java中的数据导出到Excel表中
- select 下拉选中
- (大数 求余) Large Division Light OJ 1214
- element-ui upload组建上传 file-list踩过的坑
- 【docker】centOS7上部署的mysql和spring boot服务,要求,mysql的时间、java程序服务的时间和宿主机的时间完全保持一致【修改mysql时区,临时和永久】【修改spring boot配置文件时区】【修改docker启动spring boot实例程序时区】
- WSAAsyncSelect 模型