laravel-4 - 升级到 Laravel 4 时调用未定义的方法 "Builder::getAfterFilters"

标签 laravel-4

我尝试从 Laravel 3 升级到 4,但到处都出现此错误

Call to undefined method Illuminate\Database\Query\Builder::getAfterFilters()

有人知道这会发生在哪里吗?

enter image description here

最佳答案

我也遇到了这个错误,所以我将在这里发布我的观察结果。它总是可以帮助某人!

看来 getAfterFilters() 是 L4 中所有 Controller 都需要的方法。 如果错误表明未定义,您可能忘记在类中扩展 BaseController。

知道这一点后,显而易见的解决办法是扩展 BaseController...但如果不需要,则不必这样做。 就我而言,由于一个非常愚蠢的原因,我的类(class)必须是有效的 Controller 。我使用以下路由语法:

Route::get('sse', 'SSE@deamon');

SSE 没有扩展 BaseController(恕我直言,不需要) 但是这个路由语法要求您使用扩展 BaseController 的 Controller 类...所以我将其更改为:

Route::get('sse', [function() {
    SSE::deamon();
}]);

现在它可以正常工作,不会出现缺少 getAfterFilters() 错误!

关于laravel-4 - 升级到 Laravel 4 时调用未定义的方法 "Builder::getAfterFilters",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22667511/

相关文章:

php - 通过迁移改变 Laravel 4 表

Laravel SSH 输出不返回完整的输出内容

authentication - Laravel:依赖注入(inject)身份验证

php - 如何验证是否在 laravel 中选中了复选框?

php - 在 Laravel 4 单元测试中,如何在请求中设置 cookie?

php - Sentry on Laravel 4. 无密码社交认证

Laravel:调用未定义的方法Illuminate\Database\Eloquent\Collection::save()

validation - 仅当在 Laravel 4 中输入字段的值时如何验证字段?

Laravel 外键下拉列表

php - 无法迁移 Pagodabox 项目的数据库