我想做的就是将haml文件转换为erb。这样做之后,我明白了 未定义的方法`render_sequence_nav'错误消息。即使没有 以haml格式发生此类错误。在haml文件中,有这一行:
#fields << render_sequence_nav(sequence_info, students_path)
fields << render(:partial => "resources_partials/sequence/nav", :locals => sequence_info.merge({:cancel_url => {:controller => :dashboard}}))
= render_form { fields }
如果我从#fields中删除#,它将返回haml中未定义的方法render_sequence_nav。显然这是必要的。但是,我无法在erb中重新创建它。如果我添加哈希,它会使行变灰:
<% #fields << render_sequence_nav(sequence_info,
students_path) %>
<% fields << render(:partial =>
"resources_partials/sequence/nav", :locals =>
sequence_info.merge({:cancel_url => {:controller => :dashboard}})) %>
<%= render_form { fields } %>
<% end %>
有关如何解决此问题的任何想法?感谢。
答案 0 :(得分:0)
你的问题有点令人困惑,因为你声明在为视图使用Haml时没有发生错误,但在第二段你写的是如果你取消注释fields
行你会使用Haml得到错误。
Rails正在寻找名为render_sequence_nav
的视图辅助方法。这应该位于app/helpers/application_helper.rb
或与该视图的控制器对应的任何助手。