当前位置:  开发笔记 > 编程语言 > 正文

如何修复laravel 5.2 zizaco委托:迁移类名称验证?

如何解决《如何修复laravel5.2zizaco委托:迁移类名称验证?》经验,为你挑选了2个好方法。

我从GitHub Link跟踪了zizac/entrust安装教程并遇到了错误:

类名必须是一个有效的对象或在VAR的字符串/ WWW/HTML/laravel_test /供应商/ zizaco /委托/ SRC /命令/ MigrationCommand.php上线86

MigrationCommand.php文件网址:链接

Outut:

php artisan entrust:migration

Tables: roles, role_user, permissions, permission_role
A migration that creates 'roles', 'role_user', 'permissions', 'permission_role' tables will be created in database/migrations directory

Proceed with the migration creation? [Yes|no] (yes/no) [yes]: yes

Creating migration...
PHP Fatal error:  Class name must be a valid object or a string in /var/www/html/laravel_test/vendor/zizaco/entrust/src/commands/MigrationCommand.php on line 86

命令:php artisan vendor:发布成功.

文件:config/entrust.php存在.

我没有改变config/auth.php文件的任何选项 - auth.php.怎么解决?



1> tapos ghosh..:

在第86行的vendor/zizaco/entrust/src/commands/MigrationCommand.php中

删除行:

    $usersTable  = Config::get('auth.table');
    $userModel   = Config::get('auth.model');

添加行:

$usersTable  = Config::get('auth.providers.users.table');
$userModel   = Config::get('auth.providers.users.model');

和config/auth.php文件一样写提供者行,就像我一样:

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
        'table' => 'users',
    ],

    // 'users' => [
    //     'driver' => 'database',
    //     'table' => 'users',
    // ],
],

然后你的问题将解决:快乐的编码


您不应编辑直接供应商文件,因为它们将在以后的更新中被覆盖.相反,您应该将正确的行添加到配置文件中,直到Entrust的更新更新其代码库以使用更新的Laravel身份验证布局.

2> 小智..:

在第86行的vendor/zizaco/entrust/src/commands/MigrationCommand.php中.

Laravel 5.1.*添加行

$usersTable  = Config::get('auth.table');
$userModel   = Config::get('auth.model');

Laravel 5.2.*添加线

$usersTable  = Config::get('auth.providers.users.table');
$userModel   = Config::get('auth.providers.users.model');

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有