मैंने बस यही किया, एक GET "डिलीट" विधि जोड़ने के लिए।
अपनी फ़ाइलें बनाने के बाद, आपको बस जोड़ना होगा
'AntonioRibeiro\Routing\ExtendedRouterServiceProvider',
अपने ऐप / config.php में 'प्रोवाइडर्स' के लिए
इसी फ़ाइल में रूट उपनाम संपादित करें:
'Route' => 'Illuminate\Support\Facades\Route',
इसे बदल रहा है
'Route' => 'AntonioRibeiro\Facades\ExtendedRouteFacade',
और सुनिश्चित करें कि उन फाइलों को ऑटोलॉज किया जा रहा है, उन्हें कुछ निर्देशिका में होना चाहिए जो आपके कंपोजर में है ।json ("ऑटोलॉड" अनुभाग)।
फिर आपको बस इसकी आवश्यकता है:
Route::resource('users', 'UsersController');
और यह (अंतिम पंक्ति को देखें) यदि आप चलाते हैं तो यह परिणाम है php artisan routes
:
वे मेरे स्रोत फ़ाइलें हैं:
ExtendedRouteFacade.pas
<?php namespace AntonioRibeiro\Facades;
use Illuminate\Support\Facades\Facade as IlluminateFacade;
class ExtendedRouteFacade extends IlluminateFacade {
/**
* Determine if the current route matches a given name.
*
* @param string $name
* @return bool
*/
public static function is($name)
{
return static::$app['router']->currentRouteNamed($name);
}
/**
* Determine if the current route uses a given controller action.
*
* @param string $action
* @return bool
*/
public static function uses($action)
{
return static::$app['router']->currentRouteUses($action);
}
/**
* Get the registered name of the component.
*
* @return string
*/
protected static function getFacadeAccessor() { return 'router'; }
}
ExtendedRouter.pas
<?php namespace AntonioRibeiro\Routing;
class ExtendedRouter extends \Illuminate\Routing\Router {
protected $resourceDefaults = array('index', 'create', 'store', 'show', 'edit', 'update', 'destroy', 'delete');
/**
* Add the show method for a resourceful route.
*
* @param string $name
* @param string $base
* @param string $controller
* @return void
*/
protected function addResourceDelete($name, $base, $controller)
{
$uri = $this->getResourceUri($name).'/{'.$base.'}/destroy';
return $this->get($uri, $this->getResourceAction($name, $controller, 'delete'));
}
}
ExtendedRouteServiceProvider.pas
<?php namespace AntonioRibeiro\Routing;
use Illuminate\Support\ServiceProvider;
class ExtendedRouterServiceProvider extends ServiceProvider {
/**
* Indicates if loading of the provider is deferred.
*
* @var bool
*/
protected $defer = true;
/**
* Register the service provider.
*
* @return void
*/
public function register()
{
$this->app['router'] = $this->app->share(function() { return new ExtendedRouter($this->app); });
}
/**
* Get the services provided by the provider.
*
* @return array
*/
public function provides()
{
return array('router');
}
}
::resource
अन्यथा आपको एक त्रुटि संदेश, "मॉडल के लिए कोई क्वेरी परिणाम" मिलता है।