gpt4 book ai didi

php - Laravel 4 子目录 Controller 不加载输入类

转载 作者:可可西里 更新时间:2023-11-01 00:20:42 25 4
gpt4 key购买 nike

我是 Laravel 的新手,在处理子目录时遇到了问题。我想在 Controller 文件夹中创建一个管理文件夹,到目前为止它正在运行。但是当我尝试使用 Laravel 的输入类时,它说找不到它。

我的路线:

Route::group(array('prefix'=> 'admin', 'before' => 'auth.admin'), function() {

Route::resource('/users','Admin\\UsersController');
Route::resource('/products','Admin\\ProductsController');
Route::resource('/categories','Admin\\CategoriesController');
Route::resource('/orders','Admin\\OrdersController');
Route::resource('/reviews','Admin\\ReviewsController');

});

产品 Controller :

 <?php namespace admin;

class ProductsController extends \BaseController {

protected $layout = 'master';
/**
* Instantiate a new ProductsController instance.
*/
public function __construct()
{
$this->beforeFilter('auth.admin');
}

/**
* Display a listing of the resource.
* GET /products
*
* @return Response
*/
public function index()
{
$input = Input::all(); //here is where it finds the error

和 composer.json 自动加载:

"autoload": {

"classmap": [
"app/commands",
"app/controllers/",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php",
"app/controllers/Admin"
]
},

谢谢!

编辑:

我也曾尝试使用 Input(和\Input),但它返回了“Class 'Facade' not found”错误,当我尝试时:

use \Illuminate\Support\Facades\Facade;
use Input;

还是不行。

编辑 2:

现在使用:

use Illuminate\Support\Facades\Input;

并返回相同的错误。

编辑 3:是否进行了@ChristopherRathgeb 建议的修改,现在找不到产品型号。

回答:

按照@ChristopherRathgeb 的建议进行修改并将\添加到 View 和输入类(示例 $input =\Input:all();)后,它成功了!现在使用 action 方法重定向到这些 Controller ,我刚刚使用了 action(admin\ProductsController) 并且成功了!

感谢所有提供帮助的人!

最佳答案

首先,您可以使用基于命名空间的路由组:

Route::group(['namespace'=>'admin','prefix'=> 'admin', 'before' => 'auth.admin'],function() {
Route::resource('/users','UsersController');
Route::resource('/products','ProductsController');
Route::resource('/categories','CategoriesController');
Route::resource('/orders','OrdersController');
Route::resource('/reviews','ReviewsController');
});

接下来您的输入问题是您需要包含输入门面:

删除这个:

use \Illuminate\Support\Facades\Facade;
use Input;

并将以下内容添加到文件顶部:

use Illuminate\Support\Facades\Input;

注意:此答案使用 php 5.4 数组语法。如果您仍在使用 php 5.3,请将 [] 换成 array()。

关于php - Laravel 4 子目录 Controller 不加载输入类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25390795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com