为什么渲染动作后我的地图不会生成? (Rails和YM4R / GM)

时间:2011-01-28 15:51:46

标签: ruby-on-rails ajax google-maps map partials

我在地图上使用标记来显示和更新我的应用中点模型的位置。当移动该点时,我有一个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,并将地图与地图init javascript一起移动到局部。现在地图init javascript不包含在标题中,但我仍然有同样的问题...

1 个答案:

答案 0 :(得分:0)

我撒谎,实际上将地图代码放在帮助器中似乎已经解决了问题。我确定它之前没有用。哦,好吧,也许我继续把它放在一个局部,以便迅速和过于复杂的情况。