使用with和一起选择的雄辩错误。分段故障

时间:2016-05-02 08:39:18

标签: php apache laravel eloquent lumen

在一个查询构建器中执行selectwith时,没有服务器错误。我收到以下消息:<domain> page isnt working. <domain> didn't send any data.

当我签入/var/log/apache2/error.log时,会有一个日志:

child pid 1948 exit signal Segmentation fault (11), possible coredump in /etc/apache2

我已尝试使用上述here 的查询范围,例如

$posts = Post::with(['image' => function($query){
  $query->select('id');
}])->select('id')->get();

如果我将get()更改为toSql(),则只会输出select id from posts;

我也尝试删除select并将列传递给get()而没有运气。

进一步调查:

我已经尝试设置GDP来调试apache核心转储,但似乎没有创建转储。

我已经设置了xdebug并跟随函数堆栈到function loadRelation()内的death here at Eloquent\Builder.php

在此之前,它调用eagerLoadRelations(array $models)并将所有Post模型正确地作为仅具有id属性的帖子的集合,但是在加载图像关系的第一次迭代中它会死掉

call_user_func($constraints, $relation);

任何帮助或建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

分段错误听起来有点奇怪,但尝试将user_id添加到选择中以便它可以进行连接,例如:

$posts = Post::with(['image' => function($query){
  $query->select('id', 'user_id');
}])->select('id')->get();