我在Ubuntu中运行项目时遇到问题。我写了一个项目,它在Windows中成功运行,但是当我想在Linux中运行它时,我在“检查”的“网络”标签中遇到了下面的错误。
siteB
我使用laravel 5.8,反应js和axios
我使用此命令,但不起作用
{message: "Class App\Http\Controllers\Api\v1\panel\StorageController does not exist",…}
exception: "ReflectionException"
file: "/home/komail/projects/lara-nakband/vendor/laravel/framework/src/Illuminate/Container/Container.php"
line: 790
message: "Class App\Http\Controllers\Api\v1\panel\StorageController does not exist"
在api.php中
composer dump-autoload,
php artisan config:clear
在storageController中
<?php
use Illuminate\Http\Request;
Route::prefix('v1')->namespace('Api\v1\panel')->group(function (){
Route::get('/storage/list' , 'StorageController@list');
Route::get('/storage/chart' , 'StorageController@chart');
Route::post('/storage' , 'StorageController@storeNewProduct');
Route::get('/categories' , 'CategoriesController@index');
});
在List.jsx中
<?php
namespace App\Http\Controllers\Api\v1\Panel;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Models\Storage;
use Illuminate\Support\Facades\DB;
class StorageController extends Controller
{
public function list(Request $request)
{
dd('ssss');
$products = Storage::get();
return $products;
}
虽然代码在Windows中运行时没有任何错误,但是当我在Linux中调用控制器时,似乎没有有效的答案。实际上,会出现一条消息,说明:控制器不存在。
答案 0 :(得分:0)
命名空间区分大小写。更改
Route::prefix('v1')->namespace('Api\v1\panel')->group(function (){
以大写字母“ P”匹配控制器中的名称空间
Route::prefix('v1')->namespace('Api\v1\Panel')->group(function (){
反之亦然。
您可以阅读有关命名空间要求here的信息。