我有一个应用程序,其位置模型由用户输入的地址进行地理编码,现在我在给定地址实例中地理编码的地址的情况下显示谷歌地图,现在我要做的是显示foursquare场地及其地图中显示位置实例的图标,我怎么能实现这一点,我已经将附近的场地放在列表中,如何在地图上显示它们的图标。
这是展示视图和控制器,我想在其中看到带有位置实例的地图以及附近的四方场地......
def show
@location = Location.find(params[:id])
@json = Location.where('slug = ?', params[:id]).to_gmaps4rails
end
观点:
<% provide(:title, @location.name) %>
<% if !@location.active? %>
<%= content_tag(:div, "Location currently deactivated!", class: "alert") %>
<% end %>
<div class="row-fluid">
<aside class="span4" >
<section>
<h1>
<%= @location.name %>
</h1>
<%= gmaps({
"map_options" => { "auto_zoom" => false, "zoom" => 17 },
"markers" => { "data" => @json }
}) %>
</section>
</aside>
</div>
感谢您的帮助!
答案 0 :(得分:0)
foursquare2 gem可能对您有用。
答案 1 :(得分:0)
嗯,很难猜出你的场地是怎样的,但是我可以给你一些我怀疑可以工作的东西。
假设:
to_gmaps4rails
吐出JSON
场地至少有纬度,经度。也许是图片。
你的目标:从地点将json从地点添加到json。
单曲:
locations_array_of_hashes = JSON.parse(@json)
venues_array_of_hashes = #do what is necessary to build an array containing hashes like { lat: , lng: , marker_picture: }
global_array_of_hashes = locations_array_of_hashes.concat venues_array_of_hashes
@global_json = global_array_of_hashes.to_json