51

への通常の ajax リクエストに応答するコントローラー「UserController」がありますhttp://localhost:3000/user/3

通常のリクエストの場合、ビューをレンダリングしたい。AJAXリクエストの場合はJSONを返したい。

正しいアプローチはrespond_to do |format|ブロックのようです。JSON を記述するのは簡単ですが、HTML に応答して通常どおりビューを単純にレンダリングするにはどうすればよいでしょうか?

  def show
    @user = User.find(params[:id])
    respond_to do |format|
      format.html {
        render :show ????this seems unnecessary. Can it be eliminated??? 
      }
      format.json { 
        render json: @user
      }
    end
  end
4

3 に答える 3

22

はい、次のように変更できます

respond_to do |format|
  format.html
  format.json { render json: @user }
end
于 2013-11-25T08:52:09.313 に答える