getKey(); $userColumnPath = $model->getUserColumnId(); if (! Str::contains($userColumnPath, '.')) { $builder->where($model->getTable().'.'.$userColumnPath, $userId); return; } $relationPath = Str::beforeLast($userColumnPath, '.'); $column = Str::afterLast($userColumnPath, '.'); $builder->whereHas($relationPath, fn (Builder $query) => $query->where($column, $userId)); } }