首页 > 解决方案 > laravel 7 php artisan route:缓存不起作用

问题描述

请看我的代码。

网页.php

Auth::routes();
//
Route::get('/', 'HomeController@index')->name('home');
Route::get('/findIDProvince', 'HomeController@findIDProvince')->name('findIDProvince');
Route::get('/markets', 'MarketController@index')->name('market');
Route::get('/market/{marketSlug}', 'MarketController@single');
Route::get('/category/{categorySlug}', 'CategoryController@single');
Route::match(['get', 'post'],'/cart/{market}',"MarketController@AddCard")->name('cart');
Route::get('/shopping-cart', 'MarketController@showCart')->name('cart');
Route::post('/comments', 'MarketController@comments')->name('comments');

Route::get('/{pageSlug}', 'PageController@contact')->name('contact');
Route::middleware('auth:web')->group(function () {
    Route::post('/payment', 'PaymentController@payment')->name('payment');
    Route::get('/payment/callback', 'PaymentController@callback')->name('payment.callback');
});

Route::prefix('ajax')->group(function() {
   Route::post('/add-to-cart', 'AjaxController@add_to_cart');
   Route::post('/remove-from-cart', 'AjaxController@remove_from_cart');
   Route::post('/get-cart', 'AjaxController@get_cart');
   Route::post('/increment-cart-item', 'AjaxController@increment_cart_item');
   Route::post('/decrease-cart-item', 'AjaxController@decrease_cart_item');
   Route::delete('/delete/{id}', 'AjaxController@delete');
});

Route::namespace('Admin')->middleware(['auth:web', 'checkAdmin'])->prefix('admin')->group(function (){
    Route::get('dashboard', 'DashboardController@index')->name('dashboard');
    Route::resource('slideShows', 'SlideShowController');
    Route::resource('categories', 'CategoryController');
    Route::resource('users', 'UserController');
    Route::resource('markets', 'MarketController');
    Route::resource('orders', 'OrderController');
    Route::resource('pages', 'PageController');
    Route::get('footers', 'FooterController@index')->name('footers.index');
    Route::get('links', 'LinkController@index')->name('links.index');
    Route::post('links/store', 'LinkController@store')->name('links.store');
    Route::resource('address', 'AddressController');
    Route::get('socials', 'SocialController@index')->name('socials.index');
    Route::post('socials/store', 'SocialController@store')->name('socials.store');

    Route::get('approved', 'CommentController@approved')->name('approved');
    Route::get('unapproved', 'CommentController@unapproved')->name('unapproved');
    Route::put('comment/update/{comment}', 'CommentController@update')->name('comment.update');
    Route::delete('comment/destroy/{comment}', 'CommentController@destroy')->name('comment.destroy');
});

我已经在本地服务器上安装了 laravel 7。当我运行php artisan route:cache命令时,laravel 返回错误:

缓存

我正在 Laravel 上写我的项目。当我优化项目时,我遇到了一个问题:

无法为序列化准备路由 [api/user]。使用闭包。

我在 web.php 中寻找任何闭包,但我没有找到任何东西。

标签: laravel

解决方案


Laravel 无法缓存使用闭包的路由 - https://github.com/laravel/framework/issues/22034 有示例user路由routes/api.php只需删除它并重试


推荐阅读