我使用searchkick进行geoloc并且工作正常,问题是我的查询返回我周边的所有用户,包括执行请求的用户。
所以目前我已经
了 res = User.search "*", where: {location: {near: [@user.current_position.latitude, @user.current_position.longitude], within: params[:perimeter] + "mi"}}
我想要那样的东西:
res = User.search "*", where: {location: {near: [@user.current_position.latitude, @user.current_position.longitude], within: params[:perimeter] + "mi"}, {:email != @user.email}}
仅获取与执行查询的用户不同的用户。
我不是红宝石专家,所以我找不到正确的语法来做到这一点。有什么帮助吗?
答案 0 :(得分:0)
根据Queries的文档,not
条件应用如下:
res = User.search "*", where: {
location: {
near: [ @user.current_position.latitude, @user.current_position.longitude ],
within: params[:perimeter] + "mi"
},
email: { not: @user.email }
}
在新行中显示email: { not: @user.email }
的格式化代码。