我有这个型号:
class Location < ActiveRecord::Base
acts_as_gmappable
def gmaps4rails_address
"#{self.city}, #{self.country}"
end
end
具有以下模式:
t.float "latitude"
t.float "longitude"
t.boolean "gmaps"
t.datetime "created_at"
t.datetime "updated_at"
t.string "country"
t.string "city"
t.string "street"
我希望允许用户指定起点和终点,并给他它们之间的距离。我想让他在地图上选择它们。你能指导我完成这件事吗?
使用gmaps4rails
没有直接的方法可以实现您想要的东西,至少不是它的两个部分:
-
点击地图并创建标记属于你的
-
一旦检索到这两个位置,gem就可以处理目的地的显示。
在您看来,您应该添加以下ruby代码(以以下选项为例,这里的帮助程序的唯一目的是创建映射):
<%= gmaps( "map_options" => { "center_on_user" => true, "zoom" => 5 }) %>
然后可以包含javascript:
//starting point
Gmaps4Rails.direction_conf.origin = from_var_string;
//where to go
Gmaps4Rails.direction_conf.destination = to_var_string;
//if you want to display a panel with the instructions
Gmaps4Rails.direction_conf.display_panel = true;
//pass here the id of the panel
Gmaps4Rails.direction_conf.panel_id = 'instructions';
//set the travel mode
Gmaps4Rails.direction_conf.travelMode = 'DRIVING';
//add one or more waypoints
Gmaps4Rails.direction_conf.waypoints = [{"stopover":true,"location": waypoint1_string},{"stopover":true,"location": waypoint2_string}];
//trigger the creation
Gmaps4Rails.create_direction();