根据关系条件

时间:2016-08-21 07:03:37

标签: php laravel eloquent laravel-5.1

我正在尝试为我的用户构建一个搜索系统。

第一部分很容易,因为我搜索的所有信息都在同一张表中。

第二部分涉及根据提供的IP地址搜索用户。为此我正在使用:

$users = User::with(array('login' => function($q){
                $q->where('ip_address', Input::get('ipaddress'));
            }))->paginate(10);

然而,这将返回所有用户,而不仅仅是满足IP地址要求的用户。我哪里错了?或者有更简单的方法吗?

1 个答案:

答案 0 :(得分:2)

$users = User::whereHas('login', function ($q) {
    $q -> where('ip_address', Input::get('ipaddress'));
}) -> paginate(10);

试试吧!