{"record":{"id":"d51f6e4c0f0960bc","repo":"filamentphp/filament","slug":"nested-sorting-only-supports-belongsto-hasone","errorCode":null,"errorMessage":"Nested sorting only supports [BelongsTo], [HasOne], [MorphOne], [BelongsToThrough], and [HasOneThrough] relationships, [{class}] found.","messagePattern":"Nested sorting only supports \\[BelongsTo\\], \\[HasOne\\], \\[MorphOne\\], \\[BelongsToThrough\\], and \\[HasOneThrough\\] relationships, \\[(.+?)\\] found\\.","errorType":"exception","errorClass":"InvalidArgumentException","httpStatus":null,"severity":"error","filePath":"packages/support/src/Services/RelationshipOrderer.php","lineNumber":58,"sourceCode":"            $relationship = Relation::noConstraints(fn () => $currentModel->{$relationshipSegment}());\n\n            $this->validateRelationshipType($relationship);\n\n            $chain[] = $relationship;\n\n            $currentModel = $relationship->getRelated();\n        }\n\n        return $chain;\n    }\n\n    protected function validateRelationshipType(Relation $relationship): void\n    {\n        if ($relationship instanceof BelongsTo || $relationship instanceof HasOne || $relationship instanceof MorphOne || $relationship instanceof BelongsToThrough || $relationship instanceof HasOneThrough) {\n            return;\n        }\n\n        throw new InvalidArgumentException(\n            'Nested sorting only supports [BelongsTo], [HasOne], [MorphOne], [BelongsToThrough], and [HasOneThrough] relationships, [' . $relationship::class . '] found.'\n        );\n    }\n\n    /**\n     * @param  array<Relation>  $relationshipChain\n     */\n    protected function applyRelationshipConstraints(\n        EloquentBuilder $subquery,\n        array $relationshipChain,\n        Model $baseModel\n    ): void {\n        $chainLength = count($relationshipChain);\n\n        for ($i = $chainLength - 1; $i >= 0; $i--) {\n            $isFirstRelationship = $i === 0;\n            $isSubqueryBase = $i === ($chainLength - 1);\n","sourceCodeStart":40,"sourceCodeEnd":76,"githubUrl":"https://github.com/filamentphp/filament/blob/53483fa9340e4ec637985fe454ebb58afb92ea24/packages/support/src/Services/RelationshipOrderer.php#L40-L76","documentation":"Error \"Nested sorting only supports [BelongsTo], [HasOne], [MorphOne], [BelongsToThrough], and [HasOneThrough] relationships, [{class}] found.\" thrown in filamentphp/filament.","triggerScenarios":"Thrown at packages/support/src/Services/RelationshipOrderer.php:58 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"53483fa9340e4ec637985fe454ebb58afb92ea24","analyzedAt":"2026-08-17T02:06:23.049Z","schemaVersion":2},"datasetVersion":"2026-08-17T04:17:16.089Z"}