Skip to content

Conversation

@parth391
Copy link
Contributor

Example

class SomeController
{
    public function __construct(
        protected readonly User $userbaseModel,
    ) {
    }

    public function getUser()
    {
        $userModel = new User;

        $user = $this->userbaseModel::publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
        $user = $userModel::publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
    }
}

At the moment,

-$user = $this->userbaseModel::publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
-$user = $userModel::publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
+$user = \userbaseModel::query()->publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
+$user = \userModel::query()->publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();

This pr will fix as below

-$user = $this->userbaseModel::publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
-$user = $userModel::publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
+$user = $this->userbaseModel::query()->publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();
+$user = $userModel::query()->publicMethodBelongsToEloquentQueryBuilder(1)->where('xxx', 'xxx')->first();

@calebdw
Copy link
Contributor

calebdw commented Oct 12, 2025

If you already have a model instance, then can use ->newQuery() over ::query()

@GeniJaho GeniJaho merged commit f468123 into driftingly:main Oct 23, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants