我在地图上使用标记来显示和更新我的应用程序中点模型的位置。当点移动时,我有一个更新所述点位置的 javascript 事件。
这一切都可以正常工作,直到某个点模型验证失败并且编辑页面呈现错误。地图不见了。我知道'render'实际上不会像通过redirect_to调用动作那样在控制器中执行代码。
结果,我将地图生成代码从控制器移动到了点助手,所以这就是我认为的那种东西;
<% map = generate_map_for_point(point) %>
<% content_for :head do %>
<% if map %>
<%= GMap.header(:with_vml => false, :host => request.host) %>
<%= map.to_html %>
<% end %>
<% end %>
这也不起作用。最后,我将 form_for 设置为 remote_form_for,并将地图与地图初始化 javascript 一起移动到部分地图中。现在 map init javascript 不包含在标题中,但我仍然有同样的问题......