Mysql 添加自定义列后分页不起作用&;基于新列的条件
我基本上是在使用addSelect()插入新列后尝试实现分页 以及基于此新列的where条件。 代码如下:Mysql 添加自定义列后分页不起作用&;基于新列的条件,mysql,laravel,eloquent,pagination,Mysql,Laravel,Eloquent,Pagination,我基本上是在使用addSelect()插入新列后尝试实现分页 以及基于此新列的where条件。 代码如下: $lattitude = $request->lattitude != '' ? $request->lattitude : auth()->user()->details->lattitude; $longitude = $request->longitude != '' ? $request->longitude : auth()->us
$lattitude = $request->lattitude != '' ? $request->lattitude : auth()->user()->details->lattitude;
$longitude = $request->longitude != '' ? $request->longitude : auth()->user()->details->longitude;
$distance = $request->distance;
$query = Facility::query();
$query = $query->AddLocationDistance($lattitude, $longitude);
$query = $query->where('location_distance', '<', $distance);
return $query->paginate(10);
上面的代码适用于get(),但我不能使用paginate()。我得到这个错误:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'location_distance' in 'where clause' (SQL: select count(*) as aggregate from `facilities` where location_distance < 1000)
SQLSTATE[42S22]:未找到列:“where子句”中的1054未知列“location\u distance”(SQL:选择count(*)作为“facilities”中的聚合,其中location\u distance<1000)
我应该如何解决上述问题?任何建议都会很有帮助。有一个解决此问题的laravel软件包 它由泰勒·奥特威尔在拉威尔版本7.10中修复。 所以使用这个包。
谢谢。这是救命稻草
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'location_distance' in 'where clause' (SQL: select count(*) as aggregate from `facilities` where location_distance < 1000)