RoR:渲染JSON时模板丢失错误

17a*_*ing 6 ruby json ruby-on-rails

我的控制器中有以下代码:

def tljson (result = [])
  @stat_id = params[:stat_id]
  @rpm = FedoraRpm.find_by_name(@stat_id)
  @rpm.ruby_gem.historical_gems.each { |h|
    result << { :content => h.version, :start => h.build_date }
    }
  @rpm.bugs.each { |b|
    result << { :content => b.name + "<br><a href='"+b.url+"'>View on BugZilla</a>", :start => b.bz_id }
  }
  @res = result.to_json
    respond_to do |format|
    format.json { render @res.to_json }
    end
end
Run Code Online (Sandbox Code Playgroud)

转到/tljson.json呈现JSON,但标题显示'模板丢失; 缺少模板'.我究竟做错了什么?

dee*_*our 7

我相信你需要指定你想要:json在你的respond_to块中渲染

respond_to do |format|
  format.json { render json: @res }
end
Run Code Online (Sandbox Code Playgroud)

否则它将查找tljson.json.erb文件.