【问题标题】:dev deploy complaining about closures开发部署抱怨关闭
【发布时间】:2020-06-13 15:33:12
【问题描述】:

我跑了deb deploy,结果到了这一点。

  The command "/usr/bin/php ~/NetTube/releases/1/artisan optimize" failed.

  Exit Code: 1 (General error)

  Host Name: 68.183.20.108

  ================
  Configuration cache cleared!
  Configuration cached successfully!
  Route cache cleared!

  In Route.php line 917:

    Unable to prepare route [api/user] for serialization. Uses Closure.

我已经对此进行了研究,似乎我不能在路由中使用闭包,这很好。我只是不确定如何防止关闭。

这是我的 web.php

<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

// Route::get('/', function () {
//     return view('welcome');
// });

Route::get('/','HomeController@index')->name('home');

Auth::routes();

// Route::get('/home', 'HomeController@index')->name('home');

Route::group(['middleware' => ['auth']], function(){
    Route::get('/upload','VideoUploadController@index');

    Route::get('/channel/{channel}/edit','ChannelSettingsController@edit');
    Route::put('/channel/{channel}/edit','ChannelSettingsController@update');
});


Route::get('/channel/{channel}','ChannelController@index');
Route::get('/{channel}','ChannelController@index');

我已经尝试将路线放在一个组中,而不是与

Route::get('/upload', [
    'uses' => 'VideoUploadController@index',
    'middleware' => ['auth'],
]);

Route::get('/channel/{channel}/edit', [
    'uses' => 'ChannelSettingsController@edit',
    'middleware' => ['auth'],
]);

Route::put('/channel/{channel}/edit', [
    'uses' => 'ChannelSettingsController@update',
    'middleware' => ['auth'],
]);

我正在运行 laravel 6.17.1。我希望我向任何可以提供帮助的人提供了足够的信息。

【问题讨论】:

  • 我通过尝试搜索自己知道我需要将路由放入控制器中,但我认为这就是我对 ChannelSettingsController@edit 所做的事情
  • 查看 api.php 带有 'user' uri 的路由

标签: php laravel routes closures


【解决方案1】:

问题在于routes\api.php

执行Route::middleware('auth:api')-&gt;get('/user', 'MyProfileController@index'); 之类的操作。此路由需要绑定到控制器。如果您不需要该路线,请评论或删除它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-19
    • 2015-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多