在使用带有Eloquent的分页符时,我收到以下错误:
Argument 2 passed to Illuminate\Pagination\Factory::__construct() must be an instance of Illuminate\View\Factory, instance of Illuminate\View\Environment given, called in C:\****\vendor\laravel\framework\src\Illuminate\Pagination\PaginationServiceProvider.php on line 23 and defined
出于测试目的,这就是我在控制器方法中的全部内容:
return User::paginate(15);
我从文档中了解升级过程,但我没有提到任何参考文献。
更新
在我的特定情况下,工作台中有一个包需要Illuminate 4.1组件,我在composer.json中更改为4.2,删除了vendor dir和composer.lock文件,安装了作曲家,错误消失了
这些操作都在包文件夹中完成。
答案 0 :(得分:5)
发表评论,但这是正确答案:
您是否有可能只需要一些Laravel组件,而不是整个Laravel框架?如果你只与某些人合作,那么像这样的事情可能会变得很糟糕,特别是如果你的所有组件都没有更新到4.2。
答案 1 :(得分:0)
当我从4.1更新到4.2时遇到了同样的问题,在我的情况下,我在推送之前对我的开发环境进行了一次作曲家更新,并从我的升级中拉了一下。现在分页问题在我的开发中并不存在,但在我的分期中,所以我认为可能是git pull错过了一些文件或缓存在视图中的问题。所以我确实删除了整个项目并从存储库中做了一个干净的克隆,这似乎解决了这个问题。
因此不完全确定您的更新方式,但您可能需要检查更新后的文件是否已完全应用。
答案 2 :(得分:0)
从4.1升级到4.2时,我也遇到了同样的问题,但我的解决方案与Phil Sturgeon的不同。
我只需删除位于Laravel项目根目录中的bootstrap/compiled.php
文件。