使用 Geokit 和 Geocoding 打印值
Using Geokit and Geocoding to print value
我有一个模型站。
class Stop < ActiveRecord::Base
geocoded_by :address
after_validation :geocode
acts_as_mappable defaults_units: :kms, lat_column_name: :latitude, lng_column_name: :longitude
我的停靠点 table 有字段 id,name,address,longitude,latitude
此 table 包含一些公交车站的预填充数据。
我有一个小表格,用户可以在其中输入地址。
<%= form_tag("/welcome/index", method: "post") do %>
<h5>Current Location</h5>
<%= text_field_tag :address %>
<p>
<%= submit_tag("Submit") %>
</p>
<% end %>
然后在我的控制器中我捕获用户输入的这个地址并使用GEOKIT找到离用户提供的地址最近的公交车站。
curAddress = params[:address]
@curlonglat = Geocoder.coordinates(curAddress)
@answer = Stop.closest(origin: @curlonglat)
最后,我尝试打印在我的视图文件中最接近的停靠点
<% if @answer%>
<%= "#{@answer} "%>
<% end %>
我的输出是#<Stop::ActiveRecord_Relation:0x007faa485228e0>
我不确定我做错了什么?
因为 @answer
是 ActiveRecord_Relation:
的一个实例,所以看起来你必须这样做
<%= @answer.first.address %>
我有一个模型站。
class Stop < ActiveRecord::Base
geocoded_by :address
after_validation :geocode
acts_as_mappable defaults_units: :kms, lat_column_name: :latitude, lng_column_name: :longitude
我的停靠点 table 有字段 id,name,address,longitude,latitude
此 table 包含一些公交车站的预填充数据。 我有一个小表格,用户可以在其中输入地址。
<%= form_tag("/welcome/index", method: "post") do %>
<h5>Current Location</h5>
<%= text_field_tag :address %>
<p>
<%= submit_tag("Submit") %>
</p>
<% end %>
然后在我的控制器中我捕获用户输入的这个地址并使用GEOKIT找到离用户提供的地址最近的公交车站。
curAddress = params[:address]
@curlonglat = Geocoder.coordinates(curAddress)
@answer = Stop.closest(origin: @curlonglat)
最后,我尝试打印在我的视图文件中最接近的停靠点
<% if @answer%>
<%= "#{@answer} "%>
<% end %>
我的输出是#<Stop::ActiveRecord_Relation:0x007faa485228e0>
我不确定我做错了什么?
因为 @answer
是 ActiveRecord_Relation:
的一个实例,所以看起来你必须这样做
<%= @answer.first.address %>