0

我正在使用地理编码器 gem 的.nearby方法来查询我的数据库并返回附近的位置对象。

问题一:第一次加载地图时,没有给JS传任何标记,也不加载地图。如何在不加载标记的情况下解决此问题?

<script type="text/javascript">
Gmaps.map = new Gmaps4RailsGoogle();
Gmaps.load_map = function() {
Gmaps.map.map_options.detect_location = true;
Gmaps.map.map_options.center_on_user = true;
Gmaps.map.initialize();
Gmaps.map.markers = ; // BLOWS UP HERE
Gmaps.map.markers_conf.list_container = "markers_list";
Gmaps.map.create_markers();
Gmaps.map.adjustMapToBounds();
Gmaps.map.callback();
};
Gmaps.oldOnload = window.onload;
 window.onload = function() { Gmaps.triggerOldOnload(); Gmaps.loadMaps(); };
</script>`

问题 2:当用户搜索并且没有附近的结果可供他们搜索时,如何从仅显示随机位置(现在它加载海洋中部)中恢复。

问题 3:当用户搜索并且附近没有可用的结果时,我可以使用浏览器地理定位将附近的位置显示到他们当前的位置(我知道并非所有浏览器都支持它)。

4

1 回答 1

1

答案1:

gem 中没有错误。

你的这行让javascript哭了:

@json = nil

确实nil不是有效的 json。

你应该做:

@json = [].to_json

答案 2

如果您的查询没有返回任何内容,请制作另一个以获取随机对象。看不出有什么问题。

答案 3

来自浏览器的地理位置包含在 gem 中,你甚至有一个成功的回调。见代码。但是您必须编写适合您自己逻辑的自己的 javascript。

于 2012-11-17T14:23:25.757 回答