首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 5:重选查询

Laravel 5:重选查询
EN

Stack Overflow用户
提问于 2015-05-10 18:47:19
回答 2查看 376关注 0票数 0

我的DB表中有大约25.000行“电影”(InnoDB,17.5mb),当我试图让它们全部显示在我的管理面板中时,什么都不会发生。只有5-8秒挂起和白屏幕。没有显示错误,只是什么都没有。(最大执行时间为3600秒,因为它在我的本地计算机上)。我的简单密码:

代码语言:javascript
复制
public function index()
{
    $data['movies'] = Movies::all();

    dd('This var_dump & die never fires');

    // return view('admin.movies', $data);
}

我只是想知道为什么它不执行查询,只是在没有宣战的情况下就死了。

我在.ENV或config/database.php中没有发现任何有趣的东西来解释在这种情况下会发生什么。

PS。是的,我可以做服务器端的分页和搜索,只从数据库中提取10-25条记录,问题不是这个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-10 18:58:39

看来你的记忆快用完了。试着搜索一半的结果,或者仅仅是100个,看看它是否至少修复了白色页面,如果是这样的话,可以使用块:

代码语言:javascript
复制
Movies::chunk(200, function($movies)
{
    foreach($movies $movie)
    {
        var_dump($movie);
    }
});
票数 2
EN

Stack Overflow用户

发布于 2015-05-10 18:52:44

您肯定应该查看您的storage\logs目录来验证错误。它很有可能需要很多内存来获得25k行。

事实上,正如您在现实生活中提到的,没有必要获得这么多行,因为除非您将它们导出到CSV或XLS中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30155331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档