Elias Garcia
Elias Garcia

Reputation: 7282

Create resource route in Laravel without certain methods

I'm building my web application with some AJAX and I'm not using all the methods from a resource controller. Is it possible to create a resource controller without some methods with php artisan? Thanks

Upvotes: 4

Views: 2057

Answers (2)

tam5
tam5

Reputation: 3227

You may specify which routes you would like to be included for the resource by passing an argument to the route definition like so:

Route::resource('photo', 'PhotoController', ['only' => [
    'index', 'show'
]]);

When you run the artisan generator you will still get all the methods, but you can just delete them. If you were to create a custom command to only create certain methods, you would still need to keep in mind that Route::resource expects all resource routes by default.

Upvotes: 7

Ivanka Todorova
Ivanka Todorova

Reputation: 10219

If you check out the API docs about ControllerMakeCommand you will see that it has only one option. So it's not possible to generate a controller without certain methods with the command that's shipped with laravel.

https://laravel.com/api/5.2/Illuminate/Routing/Console/ControllerMakeCommand.html

However you can make a command yourself that will accept arguments and based on your arguments it will generate a controller with only specified method.

Laravel docs on how to create a custom command

Upvotes: 1

Related Questions