$user->posts() ->where('active', 1) ->orWhere('votes', '>=', 100) ->get();
Returns: ALL posts where votes are greater than or equal to 100 are returned
select * from posts where user_id = ? and active = 1 or votes >= 100
use Illuminate\Database\Eloquent\Builder; $users->posts() ->where(function (Builder $query) { return $query->where('active', 1) ->orWhere('votes', '>=', 100); }) ->get();
Returns: Users posts where votes are greater than or equal to 100 are returned
select * from posts where user_id = ? and (active = 1 or votes >= 100)
Tip given by @BonnickJosh