Skip to content

Commit 08d21aa

Browse files
authored
Add Mongo builder mixin to DocumentModel (#3417)
It helps with autocompletion as IDEs will recognize Mongo builder methods that are not present on the base builder.
1 parent 01d7af9 commit 08d21aa

File tree

4 files changed

+2
-13
lines changed

4 files changed

+2
-13
lines changed

src/Eloquent/Builder.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ class Builder extends EloquentBuilder
6969
];
7070

7171
/**
72-
* @return ($function is null ? AggregationBuilder : self)
72+
* @return ($function is null ? AggregationBuilder : $this)
7373
*
7474
* @inheritdoc
7575
*/

src/Eloquent/DocumentModel.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
use function strlen;
5151
use function var_export;
5252

53+
/** @mixin Builder */
5354
trait DocumentModel
5455
{
5556
use HybridRelations;

tests/Models/Anniversary.php

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,10 @@
66

77
use Illuminate\Database\Eloquent\Model;
88
use MongoDB\Laravel\Eloquent\DocumentModel;
9-
use MongoDB\Laravel\Eloquent\Model as Eloquent;
10-
use MongoDB\Laravel\Query\Builder;
119

1210
/**
1311
* @property string $name
1412
* @property string $anniversary
15-
* @mixin Eloquent
16-
* @method static Builder create(...$values)
17-
* @method static Builder truncate()
18-
* @method static Eloquent sole(...$parameters)
1913
*/
2014
class Anniversary extends Model
2115
{

tests/Models/HiddenAnimal.php

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,11 @@
66

77
use Illuminate\Database\Eloquent\Model;
88
use MongoDB\Laravel\Eloquent\DocumentModel;
9-
use MongoDB\Laravel\Eloquent\Model as Eloquent;
10-
use MongoDB\Laravel\Query\Builder;
119

1210
/**
1311
* @property string $name
1412
* @property string $country
1513
* @property bool $can_be_eaten
16-
* @mixin Eloquent
17-
* @method static Builder create(...$values)
18-
* @method static Builder truncate()
19-
* @method static Eloquent sole(...$parameters)
2014
*/
2115
final class HiddenAnimal extends Model
2216
{

0 commit comments

Comments
 (0)