Commit e107901e authored by pimlie's avatar pimlie

fix for returning incorrect builder in hybrid relations

parent b9d99c61
...@@ -5,6 +5,7 @@ namespace Jenssegers\Mongodb\Eloquent; ...@@ -5,6 +5,7 @@ namespace Jenssegers\Mongodb\Eloquent;
use Illuminate\Database\Eloquent\Relations\MorphMany; use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\Relations\MorphOne; use Illuminate\Database\Eloquent\Relations\MorphOne;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Jenssegers\Mongodb\Eloquent\Builder;
use Jenssegers\Mongodb\Helpers\EloquentBuilder; use Jenssegers\Mongodb\Helpers\EloquentBuilder;
use Jenssegers\Mongodb\Relations\BelongsTo; use Jenssegers\Mongodb\Relations\BelongsTo;
use Jenssegers\Mongodb\Relations\BelongsToMany; use Jenssegers\Mongodb\Relations\BelongsToMany;
...@@ -300,6 +301,10 @@ trait HybridRelations ...@@ -300,6 +301,10 @@ trait HybridRelations
*/ */
public function newEloquentBuilder($query) public function newEloquentBuilder($query)
{ {
return new EloquentBuilder($query); if (is_subclass_of($this, \Jenssegers\Mongodb\Eloquent\Model::class)) {
return new Builder($query);
} else {
return new EloquentBuilder($query);
}
} }
} }
<?php <?php
use Jenssegers\Mongodb\Eloquent\Model as Eloquent; use Jenssegers\Mongodb\Eloquent\Model as Eloquent;
use Jenssegers\Mongodb\Eloquent\HybridRelations;
use Illuminate\Auth\Authenticatable; use Illuminate\Auth\Authenticatable;
use Illuminate\Auth\Passwords\CanResetPassword; use Illuminate\Auth\Passwords\CanResetPassword;
use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract; use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract;
...@@ -9,6 +10,7 @@ use Illuminate\Contracts\Auth\CanResetPassword as CanResetPasswordContract; ...@@ -9,6 +10,7 @@ use Illuminate\Contracts\Auth\CanResetPassword as CanResetPasswordContract;
class User extends Eloquent implements AuthenticatableContract, CanResetPasswordContract class User extends Eloquent implements AuthenticatableContract, CanResetPasswordContract
{ {
use Authenticatable, CanResetPassword; use Authenticatable, CanResetPassword;
use HybridRelations;
protected $connection = 'mongodb'; protected $connection = 'mongodb';
protected $dates = ['birthday', 'entry.date']; protected $dates = ['birthday', 'entry.date'];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment