I want to call a route which binds to parameter from the route which the enums have the enum type with a value of integer. However, after calling it I get error 500 with this error message Target [App\\Enums\\SportField] is not instantiable.
with the exception of "exception": "Illuminate\\Contracts\\Container\\BindingResolutionException",
.
My enum files are like this
<?php
namespace App\Enums;
enum SportField:int {
case Football=1;
case Volleyball=2;
case BasketBall=3;
case Badminton=4;
}
enum SportSubField:int
{
case Normal=1;
case Double=2;
}
and the route and the action of this route:
//Route
Route::get('{field}/{subField}',[SingleController::class,'Get']);
//Action
public function Get(SportField $field,SportSubField $subField){
return $field;
}
}
the full message of the exception is
{
"message": "Target [App\\Enums\\SportField] is not instantiable.",
"exception": "Illuminate\\Contracts\\Container\\BindingResolutionException",
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Container/Container.php",
"line": 1103,
"trace": [
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Container/Container.php",
"line": 898,
"function": "notInstantiable",
"class": "Illuminate\\Container\\Container",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Container/Container.php",
"line": 770,
"function": "build",
"class": "Illuminate\\Container\\Container",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
"line": 856,
"function": "resolve",
"class": "Illuminate\\Container\\Container",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Container/Container.php",
"line": 706,
"function": "resolve",
"class": "Illuminate\\Foundation\\Application",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
"line": 841,
"function": "make",
"class": "Illuminate\\Container\\Container",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/RouteDependencyResolverTrait.php",
"line": 85,
"function": "make",
"class": "Illuminate\\Foundation\\Application",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/RouteDependencyResolverTrait.php",
"line": 50,
"function": "transformDependency",
"class": "Illuminate\\Routing\\ControllerDispatcher",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/RouteDependencyResolverTrait.php",
"line": 30,
"function": "resolveMethodDependencies",
"class": "Illuminate\\Routing\\ControllerDispatcher",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
"line": 60,
"function": "resolveClassMethodDependencies",
"class": "Illuminate\\Routing\\ControllerDispatcher",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
"line": 40,
"function": "resolveParameters",
"class": "Illuminate\\Routing\\ControllerDispatcher",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
"line": 260,
"function": "dispatch",
"class": "Illuminate\\Routing\\ControllerDispatcher",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
"line": 205,
"function": "runController",
"class": "Illuminate\\Routing\\Route",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 798,
"function": "run",
"class": "Illuminate\\Routing\\Route",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 141,
"function": "Illuminate\\Routing\\{closure}",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
"line": 50,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
"line": 126,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
"line": 102,
"function": "handleRequest",
"class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
"line": 54,
"function": "handleRequestUsingNamedLimiter",
"class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php",
"line": 44,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Auth\\Middleware\\Authenticate",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 116,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 799,
"function": "then",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 776,
"function": "runRouteWithinStack",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 740,
"function": "runRoute",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 729,
"function": "dispatchToRoute",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 190,
"function": "dispatch",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 141,
"function": "Illuminate\\Foundation\\Http\\{closure}",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
"line": 21,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
"line": 31,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
"line": 21,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
"line": 40,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
"line": 27,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
"line": 86,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
"line": 62,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Http\\Middleware\\HandleCors",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
"line": 39,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 180,
"function": "handle",
"class": "Illuminate\\Http\\Middleware\\TrustProxies",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 116,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 165,
"function": "then",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 134,
"function": "sendRequestThroughRouter",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/public/index.php",
"line": 55,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/mnt/e/Work/KDZ/portalPanel/server.php",
"line": 21,
"function": "require_once"
}
]
}
I want to call the route and get the result without the Target [App\\Enums\\SportField] is not instantiable.
exception message.