微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – render_to_string控制器中的部分格式错误

在控制器上运行下面的代码时,我会收到以下错误信息.请注意:formats => [:json]在错误中,即使:formats => [:html]被传递到render_to_string

我究竟做错了什么?有任何想法吗?
其实下面的代码工作正常,不知道有什么变化影响了这个错误.
Rails版本:3.2.8

btw模板绝对存在:loc / _search_details.html.erb

奖金问题:在哪里可以找到api文档,显示哪些参数可以传递给render_to_string以及它的工作原理?

错误
ActionView :: MissingTemplate(缺少部分loc / search_details与{:locale => [:en],:formats => [:json],:handlers => [:erb,:builder,:coffee]}.

respond_to do |format|
    format.json { 
      @detail_str = render_to_string(:partial => 'loc/search_details',:layout => false,:formats=>[:html],:locals => {:beer_results => @beer_results})
      @list_str = render_to_string(:partial => 'loc/search_list',:locals => {:beer_results => @beer_results})
      render :json => {:results => @results_hash,:result_details => @detail_str,:result_list => @list_str }

      }
  end

解决方法

请参阅 this questionthis issue.由于您提交JSON请求,您的render_to_string期待您的部分为_search_details.json.erb.您可以提供额外的JSON部分,重命名部分或将其添加到部分<%self.formats = [:json,:html]%>,或者,尝试在该问题的接受的答案中的解决方法.

原文地址:https://www.jb51.cc/ruby/265619.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐