大家好,在使用最新的Laravel 5.2.2和Entrust时(" zizaco /委托":" 5.2.x-dev")我遇到这个错误,不知道如何解决这个问题
Call to undefined method Zizaco\Entrust\EntrustServiceProvider::hasRole()
我在HomeController.php上测试了这段代码
use Entrust;
class HomeController extends Controller
{
public function index()
{
if (Entrust::hasRole('admin')) {
echo "string";
}
return view('home');
}
}
这是我的config / app.php服务提供商
Zizaco\Entrust\EntrustServiceProvider::class
config / app.php门面别名
'Entrust' => Zizaco\Entrust\EntrustFacade::class
我也已经生成了所需的模型
我在这里错过了什么吗?提前致谢
答案 0 :(得分:10)
我有同样的问题,以下是我为解决问题所采取的步骤
在.env文件中更改为缓存数组
CACHE_DRIVER=array
并且不要忘记运行
php artisan config:cache
答案 1 :(得分:4)
似乎所有步骤都是正确的,我只需要使用php artisan config:cache
如果您遇到如下错误
BadMethodCallException in vendor\laravel\framework\src\Illuminate\Cache\Repository.php line 380:
This cache store does not support tagging.
您需要将此行中的.env更改为数组
CACHE_DRIVER=array
答案 2 :(得分:0)
试试这个:
将laravel的CPLE_DRIVER =文件更改为CACHE_DRIVER = array并保存。
现在尝试使用CLI命令。
答案 3 :(得分:-1)
Laravel驱动程序不支持标记。要解决此问题,请转到.env
文件并更改
Cache_driver=file
到
Cache_driver=array
并运行
php artisan config:cache