雄辩的分页在4.2上打破

时间:2014-06-04 04:27:13

标签: php laravel laravel-4 eloquent

在使用带有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文件,安装了作曲家,错误消失了

这些操作都在包文件夹中完成。

3 个答案:

答案 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文件。