Как переопределить контроллер Laravel Nova? - PullRequest
0 голосов
/ 20 июня 2019

Поскольку глобальный поиск Laravel Nova игнорирует политики, я хочу переопределить его контроллер.Почему-то это не работает, и глобальный поиск по умолчанию равен Laravel\Nova\Http\Controllers\SearchController.

Что у меня есть:

app/config.php


    //..
    'providers' => [

        //..
        App\Providers\RouteServiceProvider::class,
        App\Providers\NovaServiceProvider::class,
       //..
    ],

(обратите внимание назаказ поставщиков)

routes/web.php

//..
Route::get('nova-api/search', 'SearchController@index');

app/Http/Controllers/SearchController.php


namespace App\Http\Controllers;

use Laravel\Nova\Nova;
use Laravel\Nova\GlobalSearch;
use Laravel\Nova\Http\Requests\NovaRequest;
use Laravel\Nova\Http\Controllers\SearchController as NovaSearchController;

class SearchController extends NovaSearchController
{
    /**
     * Get the global search results for the given query.
     *
     * @param  \Laravel\Nova\Http\Requests\NovaRequest  $request
     * @return \Illuminate\Http\Response
     */
    public function index(NovaRequest $request)
    {
        return (new GlobalSearch(
            $request, Nova::globallySearchableResources($request)
        ))->get();
    }
}

Версии

  • Версия Laravel: 5.8.24
  • Версия Nova: 2.0.6
  • Версия PHP: 7.2.10

Это не работает.Маршрут nova-api/search все еще указывает на Laravel\Nova\Http\Controllers\SearchController.Что я делаю не так?

...