今天研究了在Laravel框架中的控制器中加入后台的目录.发现了一些小的规律,拿来和大家分享一下吧.

通常情况下,我们是直接在controllers目录中加入我们的控制器,然后再routes.php 路由表中寻找对应的控制器和action进行处理.可是如今有个问题,假设我们的前台和后台同在一个项目中,也就是说前台和后台的控制器会在一块.当然不是没有办法进行区分.我们能够在控制器前面加上Front,Admin等标记来分别前台控制器和后台控制.

这里我给大家提供一种方法来将前后台的控制器进行分离.

首先我们在controllers目录中建立一个admin目录.

第一种方法:直接在后台建立控制器,比方AdminController.php 里面正常的写上我们的内容.

在路由表中,

Route::get('admin','AdminController@index');

我们发现程序报错,说无法找到控制器AdminController.

我们打开命令行工具,进入到该项目的更文件夹中,也就是artisan,composer.json所在的文件夹中,

执行命令 composer dumpautoload 或者 composer dump-autoload

这是对自己主动载入进行优化.

我们执行完命令之后,进入vendor文件夹的composer文件夹中,

我们查看一下我们的autoload_classmap.php文件,发现里面多了个AdminController的一条记录.

对了,然后我们刷新一下浏览器,就行看到该后台控制器的内容了.

可是这个有个缺点,就是每次加入新的控制器的时候都必需要执行一下这个命令才行..

另一点须要注意的是:假设你的后台目录中出现了和前台同样的控制器的时候,这是的程序会报错.

提示后台和前台有个控制器名字相冲突.

这里的解决方式是在后台使用名字空间进行处理.

比方我们我的后台相同有个IndexController控制器

<?

PHP

namespace Controllers\Admin;

class IndexController extends \BaseController{

public function index(){

}

}

?

>

这里还是要注意一点了,当使用名字空间之后,我们在里面使用的全部静态类都默认是当前名字空间的类.所以有时我们须要使用use View; Use ...等之类的名字空间.

同一时候在路由表中我们相同要使用 Controllers\Admin\IndexController@index 这种控制器来处理请求.

好了,这就是我学到的内容,拿来和大家分享分享.

Persistence makes life valuable.

Best Wishes.

php Laravel 框架之建立后台目录的更多相关文章

  1. php后台开发(二)Laravel框架

    php后台开发(二)Laravel框架 为了提高后台的开发效率,往往需要选择一套适合自己的开发框架,因此,选择了功能比较完善的Laravel框架,仔细学来,感觉和Python语言的框架Django非常 ...

  2. 使用 Laravel 框架:成为微信公众平台开发者

    转: http://ninghao.net/blog/1441 作者:王皓发布于:2014-05-30 13:16更新于:2014-05-31 12:05 我们可以使用Laravel 框架为微信公众平 ...

  3. Php Laravel框架 多表关系处理 之 Eloquent一对多关系处理

    Php Laravel框架 多表关系处理 之 Eloquent一对多关系处理 本博文主要介绍 Laravel 框架中 Eloquent  对一对多关系的处理以及在 Laravel Administra ...

  4. laravel框架详解

    一.基础篇 1.概念 Laravel是一个有着美好前景的年轻框架,它的社区充满着活力,同时提供了完整而清晰的文档,而且为快速.安全地开发现代应用提供了必要的功能.2011年,Taylor Otwell ...

  5. laravel框架入门

    本文摘自网络,个人感觉写的很不错,决定收藏一下纯属本人学习之用 本文介绍如何开始使用 Laravel. 读完本文,你将学到: 如何安装 Laravel,新建 Laravel 程序,如何连接数据库: L ...

  6. 关于Laravel框架

    第1讲-Laravel介绍 1.1 什么是Laravel laravel是目前一个比较主流的框架,现在很多互联网的公司都在使用该框架.该框架的前身是symfony框架 Laravel的定位就是做一个简 ...

  7. 使用laravel框架与phantomjs实现截屏功能

    在网上看到的关于phantomjs实现截屏功能很多都是与node结合在一起使用,并需要输入命令才能执行.因此我想要实现输入网址即可截屏并输出图片的功能.示例:http://120.77.171.182 ...

  8. 初学Laravel框架与ThinkPHP框架的不同

    作为一个PHP菜鸟初学Laravel框架 在学习过程中我发现了其与TP框架的不同点,由于时间问题和认识还不够完善我先写出其中几点,有错误的地方希望各位大牛斧正... 1.渲染模版方式的不同:在Lara ...

  9. Laravel框架内实现api文档:markdown转为html

    前后端分离的工作模式于今是非常流行了,前后端工作的对接,就离开不了API文档的辅助. 根据自己以往的工作经历,以及了解的一些资讯,API文档的建立,无非以下几种方式: 1. word文档模板 2. 第 ...

随机推荐

  1. MySQL数据分组GROUP BY 和HAVING

    对于分组的理解,可以这样:对GROUP BY子句后面跟随的列名进行分组,然后对每一个分组而不是整个表进行操作. 举例如下:在产品表中,检索每一个供应商提供的商品的数量. mysql> SELEC ...

  2. Google大牛分享的面试秘籍

    我憋了很长时间想写点关于去Google面试的秘籍.不过我总是推迟,因为写出来的东西会让你抓狂.很可能是这样.如果按统计规律来定义“你”的话,这文章很可能让你不爽. 为啥呢?因为啊……好吧,对此我写首小 ...

  3. Spring AOP之Introduction(@DeclareParents)简介(转)

    Spring的文档上对Introduction这个概念和相关的注解@DeclareParents作了如下介绍: Introductions (known as inter-type declarati ...

  4. Perl的新特性开启

    1.perl自从5.8开始,新特性需要开启才可以使用,默认只是5.8版本,而不管当前你使用的是那个版本. 2.开启新特性,当然最高可用版本是你实际安装的版本,假设你安装的是v5.26版 ; #或者这样 ...

  5. Probability Concepts

    Probability Concepts Unconditional probability and Conditional Probability Unconditional Probability ...

  6. wait(),notify(),notifyAll()用来操作线程为什么定义在Object类中?

    这些方法存在于同步中: 使用这些方法必须标识同步所属的锁: 锁可以是任意对象,所以任意对象调用方法一定定义在Object类中. Condition是在java 1.5中才出现的,它用来替代传统的Obj ...

  7. 利用U盘进行软件加密的方法

    利用U盘进行软件加密的方法 一般的U盘不具备加密的功能,虽然U盘和加密狗外形有一些相似,但是内部完全不一样的,U盘只是一个存储器芯片和简单的附属电路,而现在的智能卡加密狗都具有一个单独的CPU或者加密 ...

  8. angular学习笔记(十四)-$watch(4)

    如果需要同时监测多个属性或者对象,并且执行的是同样的回调,可以有两种选择: 1. 监测这些属性连接起来之后的值: $scope.$watch('objOne.a+objTwo.b+...', watc ...

  9. tornado cookie安全性

    1.cookie伪造客户端javascript或浏览器插件可以修改cookie网络传输中也可以截获请求,修改cookie 2.tornado cookie安全验证机制tornado的set_secur ...

  10. Python之Dijango的“坑” hostname, aliases, ipaddrs = gethostbyaddr(name) UnicodeDecodeError: 'utf-8' cod

    错误代码提示: hostname, aliases, ipaddrs = gethostbyaddr(name) UnicodeDecodeError: 'utf-8' codec can't dec ...