Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Object of class Illuminate\\Database\\Query\\Expression could not be converted to string #441

Closed
@vheins

Description

Describe the bug
A clear and concise description of what the bug is.

Eloquent Query
Please provide the complete eloquent query that caused the bug, for example:

$data->whereHas($relation, function ($q) use ($search, $searchKey) {
	$table = $q->getModel()->getTable();
	$q->whereRaw("LOWER(cast(" . $table . "." . $searchKey . " as text)) ilike '%" . $search . "%'");
});

Stack Trace

{
 "success": false,
 "code": 500,
 "status": "Internal Server Error",
 "message": {
 "error": "Object of class Illuminate\\Database\\Query\\Expression could not be converted to string",
 "trace": [
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/CacheKey.php",
 "line": 346,
 "function": "getColumnClauses",
 "class": "GeneaLabs\\LaravelModelCaching\\CacheKey",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php",
 "line": 734,
 "function": "GeneaLabs\\LaravelModelCaching\\{closure}",
 "class": "GeneaLabs\\LaravelModelCaching\\CacheKey",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/CacheKey.php",
 "line": 352,
 "function": "reduce",
 "class": "Illuminate\\Support\\Collection",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/CacheKey.php",
 "line": 154,
 "function": "getWhereClauses",
 "class": "GeneaLabs\\LaravelModelCaching\\CacheKey",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/CacheKey.php",
 "line": 345,
 "function": "getNestedClauses",
 "class": "GeneaLabs\\LaravelModelCaching\\CacheKey",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php",
 "line": 734,
 "function": "GeneaLabs\\LaravelModelCaching\\{closure}",
 "class": "GeneaLabs\\LaravelModelCaching\\CacheKey",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/CacheKey.php",
 "line": 352,
 "function": "reduce",
 "class": "Illuminate\\Support\\Collection",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/CacheKey.php",
 "line": 51,
 "function": "getWhereClauses",
 "class": "GeneaLabs\\LaravelModelCaching\\CacheKey",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/Traits/Caching.php",
 "line": 182,
 "function": "make",
 "class": "GeneaLabs\\LaravelModelCaching\\CacheKey",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/genealabs/laravel-model-caching/src/Traits/Buildable.php",
 "line": 173,
 "function": "makeCacheKey",
 "class": "GeneaLabs\\LaravelModelCaching\\CachedBuilder",
 "type": "->"
 },
 {
 "file": "/var/www/html/app/Http/Controllers/Controller.php",
 "line": 69,
 "function": "paginate",
 "class": "GeneaLabs\\LaravelModelCaching\\CachedBuilder",
 "type": "->"
 },
 {
 "file": "/var/www/html/modules/Subscription/Controllers/SubscriptionController.php",
 "line": 28,
 "function": "search",
 "class": "App\\Http\\Controllers\\Controller",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Controller.php",
 "line": 54,
 "function": "index",
 "class": "IDS\\Subscription\\Controllers\\SubscriptionController",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php",
 "line": 43,
 "function": "callAction",
 "class": "Illuminate\\Routing\\Controller",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
 "line": 260,
 "function": "dispatch",
 "class": "Illuminate\\Routing\\ControllerDispatcher",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
 "line": 205,
 "function": "runController",
 "class": "Illuminate\\Routing\\Route",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
 "line": 798,
 "function": "run",
 "class": "Illuminate\\Routing\\Route",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 141,
 "function": "Illuminate\\Routing\\{closure}",
 "class": "Illuminate\\Routing\\Router",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/spatie/laravel-permission/src/Middlewares/PermissionMiddleware.php",
 "line": 24,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Spatie\\Permission\\Middlewares\\PermissionMiddleware",
 "type": "->"
 },
 {
 "file": "/var/www/html/app/Http/Middleware/JWTMiddleware.php",
 "line": 50,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "App\\Http\\Middleware\\JWTMiddleware",
 "type": "->"
 },
 {
 "file": "/var/www/html/app/Http/Middleware/ConvertResponseToCamelCase.php",
 "line": 21,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "App\\Http\\Middleware\\ConvertResponseToCamelCase",
 "type": "->"
 },
 {
 "file": "/var/www/html/app/Http/Middleware/ConvertRequestToSnakeCase.php",
 "line": 27,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "App\\Http\\Middleware\\ConvertRequestToSnakeCase",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php",
 "line": 50,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Routing\\Middleware\\SubstituteBindings",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
 "line": 126,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
 "line": 102,
 "function": "handleRequest",
 "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php",
 "line": 54,
 "function": "handleRequestUsingNamedLimiter",
 "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Routing\\Middleware\\ThrottleRequests",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 116,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
 "line": 799,
 "function": "then",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
 "line": 776,
 "function": "runRouteWithinStack",
 "class": "Illuminate\\Routing\\Router",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
 "line": 740,
 "function": "runRoute",
 "class": "Illuminate\\Routing\\Router",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
 "line": 729,
 "function": "dispatchToRoute",
 "class": "Illuminate\\Routing\\Router",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
 "line": 200,
 "function": "dispatch",
 "class": "Illuminate\\Routing\\Router",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 141,
 "function": "Illuminate\\Foundation\\Http\\{closure}",
 "class": "Illuminate\\Foundation\\Http\\Kernel",
 "type": "->"
 },
 {
 "file": "/var/www/html/app/Http/Middleware/DBTransaction.php",
 "line": 28,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "App\\Http\\Middleware\\DBTransaction",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
 "line": 21,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php",
 "line": 31,
 "function": "handle",
 "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
 "line": 21,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php",
 "line": 40,
 "function": "handle",
 "class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Foundation\\Http\\Middleware\\TrimStrings",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
 "line": 27,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
 "line": 86,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php",
 "line": 62,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Http\\Middleware\\HandleCors",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php",
 "line": 39,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Illuminate\\Http\\Middleware\\TrustProxies",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/itsgoingd/clockwork/Clockwork/Support/Laravel/ClockworkMiddleware.php",
 "line": 24,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 180,
 "function": "handle",
 "class": "Clockwork\\Support\\Laravel\\ClockworkMiddleware",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
 "line": 116,
 "function": "Illuminate\\Pipeline\\{closure}",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
 "line": 175,
 "function": "then",
 "class": "Illuminate\\Pipeline\\Pipeline",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
 "line": 144,
 "function": "sendRequestThroughRouter",
 "class": "Illuminate\\Foundation\\Http\\Kernel",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/octane/src/ApplicationGateway.php",
 "line": 37,
 "function": "handle",
 "class": "Illuminate\\Foundation\\Http\\Kernel",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/octane/src/Worker.php",
 "line": 92,
 "function": "handle",
 "class": "Laravel\\Octane\\ApplicationGateway",
 "type": "->"
 },
 {
 "file": "/var/www/html/vendor/laravel/octane/bin/swoole-server",
 "line": 124,
 "function": "handle",
 "class": "Laravel\\Octane\\Worker",
 "type": "->"
 },
 {
 "function": "{closure}"
 },
 {
 "file": "/var/www/html/vendor/laravel/octane/bin/swoole-server",
 "line": 170,
 "function": "start",
 "class": "Swoole\\Server",
 "type": "->"
 }
 ],
 "code": 0,
 "status": 500
 }
}

Environment

  • PHP: 8.1
  • OS: Fedora
  • Laravel: 10
  • Model Caching: Latest

Additional context
Add any other context about the problem here.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /