laravel-eloquent-case icon indicating copy to clipboard operation
laravel-eloquent-case copied to clipboard

[Laravel Lumen 10] using CaseBuilder outside of a query causes internal server error

Open gear4s opened this issue 9 months ago • 2 comments

Code causing the error:

echo CaseBuilder
    ::caseRaw('Some Code Here')
    ->when(Match1)->then(0)
    ->when(Match2)->then(1)
    ->toRaw();

Error:

{
    "error": "/var/www/html/vendor/illuminate/container/Container.php:1126 Target [Illuminate\\Database\\ConnectionInterface] is not instantiable while building [..., AgliPanci\\LaravelCase\\Query\\CaseBuilder, Illuminate\\Database\\Query\\Builder]. (0) [Illuminate\\Contracts\\Container\\BindingResolutionException]",
    "stackTrace": [
        "#0 /var/www/html/vendor/illuminate/container/Container.php(921): Illuminate\\Container\\Container->notInstantiable()",
        "#1 /var/www/html/vendor/illuminate/container/Container.php(795): Illuminate\\Container\\Container->build()",
        "#2 /var/www/html/vendor/illuminate/container/Container.php(731): Illuminate\\Container\\Container->resolve()",
        "#3 /var/www/html/vendor/laravel/lumen-framework/src/Application.php(327): Illuminate\\Container\\Container->make()",
        "#4 /var/www/html/vendor/illuminate/container/Container.php(1066): Laravel\\Lumen\\Application->make()",
        "#5 /var/www/html/vendor/illuminate/container/Container.php(982): Illuminate\\Container\\Container->resolveClass()",
        "#6 /var/www/html/vendor/illuminate/container/Container.php(943): Illuminate\\Container\\Container->resolveDependencies()",
        "#7 /var/www/html/vendor/illuminate/container/Container.php(795): Illuminate\\Container\\Container->build()",
        "#8 /var/www/html/vendor/illuminate/container/Container.php(731): Illuminate\\Container\\Container->resolve()",
        "#9 /var/www/html/vendor/laravel/lumen-framework/src/Application.php(327): Illuminate\\Container\\Container->make()",
        "#10 /var/www/html/vendor/illuminate/container/Container.php(1066): Laravel\\Lumen\\Application->make()",
        "#11 /var/www/html/vendor/illuminate/container/Container.php(982): Illuminate\\Container\\Container->resolveClass()",
        "#12 /var/www/html/vendor/illuminate/container/Container.php(943): Illuminate\\Container\\Container->resolveDependencies()",
        "#13 /var/www/html/vendor/illuminate/container/Container.php(795): Illuminate\\Container\\Container->build()",
        "#14 /var/www/html/vendor/illuminate/container/Container.php(731): Illuminate\\Container\\Container->resolve()",
        "#15 /var/www/html/vendor/laravel/lumen-framework/src/Application.php(327): Illuminate\\Container\\Container->make()",
        "#16 /var/www/html/vendor/illuminate/container/Container.php(1454): Laravel\\Lumen\\Application->make()",
        "#17 /var/www/html/vendor/illuminate/support/Facades/Facade.php(237): Illuminate\\Container\\Container->offsetGet()",
        "#18 /var/www/html/vendor/illuminate/support/Facades/Facade.php(208): Illuminate\\Support\\Facades\\Facade::resolveFacadeInstance()",
        "#19 /var/www/html/vendor/illuminate/support/Facades/Facade.php(349): Illuminate\\Support\\Facades\\Facade::getFacadeRoot()",
        "#20 /var/www/html/app/...(149): Illuminate\\Support\\Facades\\Facade::__callStatic()",
        "#21 /var/www/html/app/...(433): ...()",
        "#22 /var/www/html/app/...(172): ...()",
        "#23 /var/www/html/app/...(218): ...()",
        "#24 /var/www/html/app/...(205): ...()",
        "#25 /var/www/html/vendor/illuminate/cache/Lock.php(127): ...()",
        "#26 /var/www/html/app/...(33): Illuminate\\Cache\\Lock->block()",
        "#27 /var/www/html/app/...(204): ...()",
        "#28 /var/www/html/vendor/illuminate/container/BoundMethod.php(36): ...()",
        "#29 /var/www/html/vendor/illuminate/container/Util.php(41): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()",
        "#30 /var/www/html/vendor/illuminate/container/BoundMethod.php(93): Illuminate\\Container\\Util::unwrapIfClosure()",
        "#31 /var/www/html/vendor/illuminate/container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()",
        "#32 /var/www/html/vendor/illuminate/container/Container.php(662): Illuminate\\Container\\BoundMethod::call()",
        "#33 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(391): Illuminate\\Container\\Container->call()",
        "#34 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(356): Laravel\\Lumen\\Application->callControllerCallable()",
        "#35 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(331): Laravel\\Lumen\\Application->callLumenController()",
        "#36 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(284): Laravel\\Lumen\\Application->callControllerAction()",
        "#37 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(264): Laravel\\Lumen\\Application->callActionOnArrayBasedRoute()",
        "#38 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(48): Laravel\\Lumen\\Application->Laravel\\Lumen\\Concerns\\{closure}()",
        "#39 /var/www/html/app/...(34): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#40 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(183): ...()",
        "#41 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(30): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()",
        "#42 /var/www/html/app/...(25): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#43 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(183): ...()",
        "#44 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(30): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()",
        "#45 /var/www/html/app/...(50): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#46 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(183): ...()",
        "#47 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(30): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()",
        "#48 /var/www/html/app/...(26): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#49 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(183): ...()",
        "#50 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(30): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()",
        "#51 /var/www/html/app/...(54): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#52 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(183): ...()",
        "#53 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(30): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()",
        "#54 /var/www/html/app/...(109): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#55 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(183): ...()",
        "#56 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(30): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()",
        "#57 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(119): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#58 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(428): Illuminate\\Pipeline\\Pipeline->then()",
        "#59 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(263): Laravel\\Lumen\\Application->sendThroughPipeline()",
        "#60 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(171): Laravel\\Lumen\\Application->handleFoundRoute()",
        "#61 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(48): Laravel\\Lumen\\Application->Laravel\\Lumen\\Concerns\\{closure}()",
        "#62 /var/www/html/app/...(29): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#63 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(183): ...()",
        "#64 /var/www/html/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(30): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()",
        "#65 /var/www/html/vendor/illuminate/pipeline/Pipeline.php(119): Laravel\\Lumen\\Routing\\Pipeline->Laravel\\Lumen\\Routing\\{closure}()",
        "#66 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(428): Illuminate\\Pipeline\\Pipeline->then()",
        "#67 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(167): Laravel\\Lumen\\Application->sendThroughPipeline()",
        "#68 /var/www/html/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(112): Laravel\\Lumen\\Application->dispatch()",
        "#69 /var/www/html/public/index.php(28): Laravel\\Lumen\\Application->run()",
        "#70 {main}"
    ]
}

gear4s avatar Mar 10 '25 07:03 gear4s

I need to see a full example with namespaces used and actual fields so I can try to replicate.

aglipanci avatar Mar 10 '25 08:03 aglipanci

I am working on it. Spinning up a Lumen instance seems easiest... 🤷🏽

gear4s avatar Mar 10 '25 13:03 gear4s