0

我有以下代码

@venue = Venue.friendly.find(params[:id])
@venues_nearby = Venue.within(100, :origin => [@venue.lat, @venue.lng]).where(:id != @venue.id)

我想排除记录@venue.id

有什么方法可以与.within方法链接相同吗?

4

1 回答 1

1

"within" 返回一个范围,因此您可以使用普通 arel 执行此操作,其中:

Location.within(3.9, origin: @loc_a).where("id != #{@loc_e.id}")

如果你想要一个更好的语法,你可以使用 squeel gem 来获得:

Location.within(3.9, origin: @loc_a).where{ id != @loc_e.id }

于 2014-08-23T22:35:25.097 回答