Ruby 如何在rails api中获得json响应

Ruby 如何在rails api中获得json响应,ruby,ruby-on-rails-3,Ruby,Ruby On Rails 3,我想将从查询中获得的所有程序显示为json响应。我正在获取程序,但不知道如何通过json呈现它们。我正在使用jbuildergem并创建了一个create.json.buider.rb文件。在我的查询中,我正确地得到了所有信息,但是我没有收到包含查询中任何细节的JSON响应 这是我的控制器。我试过这样做,但没有得到json响应。只有状态为200 class Api::V1::Categories::ProgrammesController < ApiController respond

我想将从查询中获得的所有程序显示为json响应。我正在获取程序,但不知道如何通过json呈现它们。我正在使用
jbuilder
gem并创建了一个
create.json.buider.rb
文件。在我的查询中,我正确地得到了所有信息,但是我没有收到包含查询中任何细节的JSON响应

这是我的控制器。我试过这样做,但没有得到json响应。只有状态为200

class Api::V1::Categories::ProgrammesController < ApiController
  respond_to :json
  def category
    @category=Category.all
    @programmes=Programme.joins(:category).find_by(category_id: params[:category_id])
    if @programmes.present?
      render :json=> {:message=>"Programme not exists "}, :status=>422
    else
      render :json => @programmes
    end
  end
end

我想你应该把
@programmes
改成
{:programmers=>@programmes.as_json}

class Api::V1::Categories::ProgrammesController < ApiController
  def category
    @category = Category.all
    @programmes = Programme.joins(:category).find_by(category_id: params[:category_id])
    if @programmes.present?
      render :json=> {:message=>"Programme not exists "}, :status=>422
    else
      render :json => { :programmers => @programmes.as_json }
    end
  end
end
class Api::V1::Categories::ProgrammesController{:message=>“程序不存在”},:status=>422
其他的
render:json=>{:programmers=>@programmes.as_json}
结束
结束
结束

谢谢您的回复。。非常感谢。。所以Haaappyyyyyyyyyyyy
class Api::V1::Categories::ProgrammesController < ApiController
  def category
    @category = Category.all
    @programmes = Programme.joins(:category).find_by(category_id: params[:category_id])
    if @programmes.present?
      render :json=> {:message=>"Programme not exists "}, :status=>422
    else
      render :json => { :programmers => @programmes.as_json }
    end
  end
end