Closed
Description
Describe the bug
When using this package, together with other packages, that also use the newEloquentBuilder, it will fail, since two cannot use the same method two redo the eloquentBuilder, I suppose.
use GeneaLabs\LaravelModelCaching\Traits\Cachable;
use Kalnoy\Nestedset\NodeTrait;
class City extends Model
{
use Cachable, NodeTrait;
}
Eloquent Query
Please provide the complete eloquent query that caused the bug, for example:
Using the NodeTrait from Kalnoy, as mentioned above.
Route::get('tree', function() {
App\Models\City::fixTree();
});
Stack Trace
The full stack trace from your log file.
[2020-09-02 07:35:18] local.ERROR: Trait method newEloquentBuilder has not been applied, because there are collisions with other trait methods on App\Models\City {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Trait method newEloquentBuilder has not been applied, because there are collisions with other trait methods on App\\Models\\City at /home/vagrant/finddet/app/Models/City.php:9)
[stacktrace]
#0 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(143): Symfony\\Component\\ErrorHandler\\Error\\FatalError->__construct()
#1 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(130): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->fatalErrorFromPhpError()
#2 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(0): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleShutdown()
#3 /home/vagrant/finddet/vendor/composer/ClassLoader.php(444): ()
#4 /home/vagrant/finddet/vendor/composer/ClassLoader.php(322): Composer\\Autoload\\includeFile()
#5 /home/vagrant/finddet/routes/web.php(111): Composer\\Autoload\\ClassLoader->loadClass()
#6 /home/vagrant/finddet/routes/web.php(111): spl_autoload_call()
#7 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Route.php(225): Illuminate\\Routing\\RouteFileRegistrar->{closure:/home/vagrant/finddet/routes/web.php:110-112}()
#8 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Route.php(199): Illuminate\\Routing\\Route->runCallable()
#9 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Router.php(685): Illuminate\\Routing\\Route->run()
#10 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Router.php:683-687}()
#11 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:126-132}()
#12 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#13 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(77): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#14 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\VerifyCsrfToken->handle()
#15 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#16 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#17 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(116): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#18 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(62): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#19 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Session\\Middleware\\StartSession->handle()
#20 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#21 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#22 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#23 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\EncryptCookies->handle()
#24 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#25 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Router.php(687): Illuminate\\Routing\\Pipeline->then()
#26 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Router.php(662): Illuminate\\Routing\\Router->runRouteWithinStack()
#27 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Router.php(628): Illuminate\\Routing\\Router->runRoute()
#28 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Routing/Router.php(617): Illuminate\\Routing\\Router->dispatchToRoute()
#29 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(165): Illuminate\\Routing\\Router->dispatch()
#30 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): App\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:162-166}()
#31 /home/vagrant/finddet/vendor/beyondcode/laravel-query-detector/src/QueryDetectorMiddleware.php(33): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:126-132}()
#32 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): BeyondCode\\QueryDetector\\QueryDetectorMiddleware->handle()
#33 /home/vagrant/finddet/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(65): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#34 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Barryvdh\\Debugbar\\Middleware\\InjectDebugbar->handle()
#35 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#36 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#37 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#38 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\TrimStrings->handle()
#39 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#40 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(63): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#42 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\CheckForMaintenanceMode->handle()
#43 /home/vagrant/finddet/vendor/fruitcake/laravel-cors/src/HandleCors.php(37): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#44 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fruitcake\\Cors\\HandleCors->handle()
#45 /home/vagrant/finddet/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#46 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\TrustProxies->handle()
#47 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\\Routing\\Pipeline->Illuminate\\Pipeline\\{closure:/home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:143-174}()
#48 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(140): Illuminate\\Routing\\Pipeline->then()
#49 /home/vagrant/finddet/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(109): App\\Http\\Kernel->sendRequestThroughRouter()
#50 /home/vagrant/finddet/public/index.php(55): App\\Http\\Kernel->handle()
#51 /home/vagrant/finddet/public/index.php(0): {main}()
#52 {main}
"}
Environment
- PHP: 7.4.6
- OS: 9.11.3-1ubuntu1.13-Ubuntu - Vagrant Homebox
- Laravel: 7.26.1
- Model Caching: 0.10.1
Additional context
This seems to be a general issue, when using these packages, that uses the same general commands.
Presented in this issue: #137
lazychaser/laravel-nestedset#360