почему Route::resource() не обновляет маршруты после удаления / обновления имени некоторых методов в контроллере

#laravel

#laravel

Вопрос:

я создал контроллер с помощью php artisan make:Controller foo —resource и удалил некоторые методы, изменив имя метода обновления на updatePreferenceCompte, но когда я выполняю comm php artisan route:list, маршруты остаются прежними и sry для моего английского

ComptesController

 <?php

namespace AppHttpControllers;

use IlluminateHttpRequest;

class ComptesController extends Controller
{

    /**
     * Store a newly created resource in storage.
     *
     * @param  IlluminateHttpRequest  $request
     * @return IlluminateHttpResponse
     */
    public function store(Request $request)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  IlluminateHttpRequest  $request
     * @param  int  $id
     * @return IlluminateHttpResponse
     */
    public function updatePreferenceCompte(Request $request, $id)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return IlluminateHttpResponse
     */
    public function destroy($id)
    {
        //
    }
}
  

web.php

 Route::get('/', 'PagesController@tableau_bord');
Route::get('/quittances', 'PagesController@quittances');
Route::get('/profil', 'PagesController@profil');
Route::resource('compte', 'ComptesController');


Auth::routes();
  

php artisan route:список
введите описание изображения здесь

Ответ №1:

Route::resource() результаты с некоторыми предопределенными маршрутами:

Пример с Route::resource('photos', 'PhotoController') , route:list выводом будет содержать:

 Verb        URI                    Action       Route Name
GET         /photos                index        photos.index
GET         /photos/create         create       photos.create
POST        /photos                store        photos.store
GET         /photos/{photo}        show         photos.show
GET         /photos/{photo}/edit   edit         photos.edit
PUT/PATCH   /photos/{photo}        update       photos.update
DELETE      /photos/{photo}        destroy      photos.destroy
  

Ссылка на документацию

Если вы хотите оставить только некоторые маршруты ресурсов, используйте частичные маршруты ресурсов:

 Route::resource('photos', 'PhotoController')->only([
    'index', 'show'
]);
  

приводит к

 Verb        URI                    Action       Route Name
GET         /photos                index        photos.index
GET         /photos/{photo}        show         photos.show
  

и

 Route::resource('photos', 'PhotoController')->except([
    'create', 'store', 'update', 'destroy'
]);
  

приводит к

 Verb        URI                    Action       Route Name
GET         /photos                index        photos.index
GET         /photos/{photo}        show         photos.show
GET         /photos/{photo}/edit   edit         photos.edit
  

Комментарии:

1. хорошо, как насчет изменения имени метода example edit на editComptes?

2. Вам нужно определить это руками. Пожалуйста, прочитайте документы

Ответ №2:

Можете ли вы запустить php artisan route:list и вставить результаты здесь. Попробуйте очистить кеш php artisan config:cache

Комментарии:

1. обновлено, и конфигурация com php artisan:cache не работала

2. можете ли вы уточнить, что вы пытаетесь здесь сделать