如何从帖子中获得回复

时间:2017-03-24 00:51:55

标签: ruby ruby-on-rails-4

我的路线如下

namespace :books
  resources :pages, only: [] do
    post 'lesson'
  end
end

controller.rb

def lesson
  begin
    @result = @user.lesson_details(Integer(params[:lesson_id]),
                              params[:lesson_name]
    head :ok
  rescue ArgumentError => e
    render_error(:bad_request, e.message)
  end
end

我正在使用邮递员进行测试。有什么方法可以在邮递员或json中返回@result吗?

1 个答案:

答案 0 :(得分:0)

方法render渲染显示结果。由于您尝试返回json对象,因此您需要将:json作为密钥放入render,如下所示。

def lesson
  begin
    @result = @user.lesson_details(Integer(params[:lesson_id]),
                              params[:lesson_name]
    return render(:json => @result)        
    head :ok
  rescue ArgumentError => e
    render_error(:bad_request, e.message)
  end
end

我们执行return的原因是,如果调用了多个rails方法,render会抛出错误。