我正在使用laravel 4.2。
可以说有这样一个类:
class BShopsController extends ShopsController
为了解决这个问题,我尝试使用名称空间来这样说:
namespace app\controllers;
然后它找不到ShopsController
所以我加
use \ShopsController;
然后我得到错误:
BShopsController类不存在
首先应该使用什么名称空间,这样它才不会破坏任何内容?
编辑:
BShopsController和ShopsController在商店文件夹中
因此,借助Shhetri以及Laravel 4中的using命名空间
我这样做:
namespace App\Controllers\Shops;
class BShopsController extends ShopsController{}
同样在routes.php中,然后需要更改为:
Route::controller('shops', 'App\Controllers\Shops\ShopsController');
在调用action()方法的地方-也需要使用名称空间。
还需要运行
composer dump-autoload -o
否则就是错误。
同样在ShopsContrller中需要这样做:
use \App\Controllers\BaseController;
因为Shops控制器位于BaseController之外的另一个命名空间中,所以找不到它。但是是从BaseController扩展的,因此需要它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句