zoukankan      html  css  js  c++  java
  • php Laravel 框架之建立后台目录

    今天研究了在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 ControllersAdmin;

    class IndexController extends BaseController{

          public function index(){


          }

    }

    ?

    >

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

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

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

    Persistence makes life valuable.

    Best Wishes.


  • 相关阅读:
    bzoj 1853: [Scoi2010]幸运数字 容斥
    bzoj 3545&&3551: [ONTAK2010]Peaks &&加强版 平衡树&&并查集合并树&&主席树
    bzoj 2331: [SCOI2011]地板 插头DP
    bzoj 3669: [Noi2014]魔法森林 动态树
    bzoj 2734: [HNOI2012]集合选数 状压DP
    bzoj 3751: [NOIP2014]解方程 同余系枚举
    bzoj 2594: [Wc2006]水管局长数据加强版 动态树
    bzoj 2049: [Sdoi2008]Cave 洞穴勘测 动态树
    bzoj 2209: [Jsoi2011]括号序列 splay
    bzoj 1223: [HNOI2002]Kathy函数 数位DP 高精度
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/6747540.html
Copyright © 2011-2022 走看看