Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Symfony\Component\Debug\Exception\FatalThrowableError] Class name must be a valid object or a string #123

Closed
phuongphally opened this issue Apr 7, 2017 · 3 comments

Comments

@phuongphally
Copy link

phuongphally commented Apr 7, 2017

[Symfony\Component\Debug\Exception\FatalThrowableError]
Class name must be a valid object or a string

when using

$admin->attachPermission($createPost);
// equivalent to $admin->permissions()->attach([$createPost->id]);

$owner->attachPermissions([$createPost, $editUser]);
// equivalent to $owner->permissions()->attach([$createPost->id, $editUser->id]);

$owner->syncPermissions([$createPost, $editUser]);
// equivalent to $owner->permissions()->sync([$createPost->id, $editUser->id]);

@KKSzymanowski
Copy link
Collaborator

Take a look at Laravel logs to find which line causes it and what is the backtrace.

@phuongphally
Copy link
Author

[2017-04-07 07:28:18] local.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Class name must be a valid object or a string in C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Concerns\HasRelationships.php:487
Stack trace:
#0 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Concerns\HasRelationships.php(304): Illuminate\Database\Eloquent\Model->newRelatedInstance(NULL)
#1 C:\xampp\htdocs\Wegorder\app\Models\Role\Traits\Relationship\RoleRelationship.php(23): Illuminate\Database\Eloquent\Model->belongsToMany(NULL, NULL, 'role_id', 'permission_id')
#2 C:\xampp\htdocs\Wegorder\vendor\santigarcor\laratrust\src\Laratrust\Traits\LaratrustRoleTrait.php(160): App\Models\Role\Role->permissions()
#3 C:\xampp\htdocs\Wegorder\database\seeds\DatabaseRolePermissionDatabaseSeeder.php(35): Laratrust\LaratrustRole->attachPermission(Object(App\Models\Permission\Permission))
#4 [internal function]: DatabaseRolePermissionDatabaseSeeder->run()
#5 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(29): call_user_func_array(Array, Array)
#6 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(87): Illuminate\Container\BoundMethod::Illuminate\Container{closure}()
#7 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(31): Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Array, Object(Closure))
#8 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\Container.php(531): Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), Array, Array, NULL)
#9 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Seeder.php(103): Illuminate\Container\Container->call(Array)
#10 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Seeder.php(37): Illuminate\Database\Seeder->__invoke()
#11 C:\xampp\htdocs\Wegorder\database\seeds\DatabaseSeeder.php(28): Illuminate\Database\Seeder->call('DatabaseRolePer...')
#12 [internal function]: DatabaseSeeder->run()
#13 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(29): call_user_func_array(Array, Array)
#14 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(87): Illuminate\Container\BoundMethod::Illuminate\Container{closure}()
#15 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(31): Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Array, Object(Closure))
#16 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\Container.php(531): Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), Array, Array, NULL)
#17 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Seeder.php(103): Illuminate\Container\Container->call(Array)
#18 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Console\Seeds\SeedCommand.php(63): Illuminate\Database\Seeder->__invoke()
#19 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Concerns\GuardsAttributes.php(122): Illuminate\Database\Console\Seeds\SeedCommand->Illuminate\Database\Console\Seeds{closure}()
#20 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Console\Seeds\SeedCommand.php(64): Illuminate\Database\Eloquent\Model::unguarded(Object(Closure))
#21 [internal function]: Illuminate\Database\Console\Seeds\SeedCommand->fire()
#22 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(29): call_user_func_array(Array, Array)
#23 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(87): Illuminate\Container\BoundMethod::Illuminate\Container{closure}()
#24 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(31): Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Array, Object(Closure))
#25 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\Container.php(531): Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), Array, Array, NULL)
#26 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Console\Command.php(182): Illuminate\Container\Container->call(Array)
#27 C:\xampp\htdocs\Wegorder\vendor\symfony\console\Command\Command.php(265): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArrayInput), Object(Illuminate\Console\OutputStyle))
#28 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Console\Command.php(167): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArrayInput), Object(Illuminate\Console\OutputStyle))
#29 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Console\Command.php(197): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArrayInput), Object(Illuminate\Console\OutputStyle))
#30 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Console\Migrations\RefreshCommand.php(129): Illuminate\Console\Command->call('db:seed', Array)
#31 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Console\Migrations\RefreshCommand.php(68): Illuminate\Database\Console\Migrations\RefreshCommand->runSeeder(NULL)
#32 [internal function]: Illuminate\Database\Console\Migrations\RefreshCommand->fire()
#33 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(29): call_user_func_array(Array, Array)
#34 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(87): Illuminate\Container\BoundMethod::Illuminate\Container{closure}()
#35 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php(31): Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Array, Object(Closure))
#36 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Container\Container.php(531): Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), Array, Array, NULL)
#37 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Console\Command.php(182): Illuminate\Container\Container->call(Array)
#38 C:\xampp\htdocs\Wegorder\vendor\symfony\console\Command\Command.php(265): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
#39 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Console\Command.php(167): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
#40 C:\xampp\htdocs\Wegorder\vendor\symfony\console\Application.php(826): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#41 C:\xampp\htdocs\Wegorder\vendor\symfony\console\Application.php(189): Symfony\Component\Console\Application->doRunCommand(Object(Illuminate\Database\Console\Migrations\RefreshCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#42 C:\xampp\htdocs\Wegorder\vendor\symfony\console\Application.php(120): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#43 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Foundation\Console\Kernel.php(123): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#44 C:\xampp\htdocs\Wegorder\artisan(35): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#45 {main}

@KKSzymanowski
Copy link
Collaborator

Can't you do some research on you own?
You're probably missing config entries for laratrust.permission and laratrust.permission_role_table.

P. S. Wrap anything that contains a hashtag(#) in code blocks(```). You just referenced 45 issues and pull requests for no reason.
For example:

[2017-04-07 07:28:18] local.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Class name must be a valid object or a string in C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Concerns\HasRelationships.php:487
Stack trace:
#0 C:\xampp\htdocs\Wegorder\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Concerns\HasRelationships.php(304): Illuminate\Database\Eloquent\Model->newRelatedInstance(NULL)
#1 C:\xampp\htdocs\Wegorder\app\Models\Role\Traits\Relationship\RoleRelationship.php(23): Illuminate\Database\Eloquent\Model->belongsToMany(NULL, NULL, 'role_id', 'permission_id')
...

You can also attach a file to a GitHub comment.

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

No branches or pull requests

3 participants