2012-07-13 32 views
6

Tôi gặp sự cố nhỏ khi cố gắng hiển thị một số vị trí nhất định dựa trên sự gần gũi với người dùng. Trong bộ điều khiển của tôi, tôi có:Đường ray, Bộ mã hóa địa lý và gần

if User.find(current_user) 
    @user = User.find(current_user) 
    @locations = Location.near(params[:latitude => @user.latitude, :longitude => @user.longitude], 50, :order => :distance) 
    end 

Người dùng có vĩ độ và kinh độ được lưu trữ. Tôi nghĩ rằng tôi đã không có các thông số đúng trong dòng Location.near, nhưng tôi không thể tìm ra những gì họ nên.

Mọi trợ giúp sẽ được đánh giá cao.

Chúc mừng!

+0

khi bao giờ tôi cố gắng sử dụng: order =>: khoảng cách nó hiển thị cho tôi lỗi 'không thể chuyển đổi khoảng cách thành to_f' –

Trả lời

2

Bạn có thể xác định khoảng cách mà bạn muốn tìm kiếm, nhớ cũng vượt qua đơn vị:

@locations = Location.near([current_user.latitude, current_user.longitude], 50, units: :km) 
+0

truyền đơn vị tính theo Kilômét rất hữu ích cho tôi. Cảm ơn! –

Các vấn đề liên quan