我在Rails 4中使用JBuilder渲染一些学生的
JSON.我希望每个学生都有一个“html”属性,它包含给定学生的HTML部分:
[ { html: "<b>I was rendered from a partial</b>" } ]
我已经尝试过以下内容:
json.array! @students do |student| json.html render partial: 'students/_student',locals: { student: student } end
但这给了我:
Missing partial students/_student with {:locale=>[:en],:formats=>[:json],:handlers=>[:erb,:builder,:raw,:ruby,:jbuilder,:coffee,:haml]}.
解决方法
您必须指定部分格式,因为默认情况下,Rails将使用当前格式(json)查找部分格式.例如:
render partial: 'students/student.html.erb'