コントローラーで奇妙な動作が発生しています。json 応答をレンダリングする代わりにリダイレクトしたい場合があるようです。
respond_to :json, :html, :js
def create
@favorite = current_user.favorites.build(:location_id=>params[:location_id])
if @favorite.save
respond_with(@favorite)
else
respond_with(@favorite.errors)
end
end
ほとんどの場合はうまくいくと思いますが、今日、次のエラーが通知されました。
NoMethodError: #<FavoritesController:0x00000006171dc0> の未定義のメソッド `favorite_url'
params ハッシュは次のように記録されました。
{"format"=>"json",
"action"=>"create",
"user_id"=>"56",
"auth_token"=>"iGSty8CMIaWsbShYZEtw",
"location_id"=>"47943",
"controller"=>"favorites"}
ほとんどの場合は機能しているように見えるので、特に奇妙です...他のコントローラーのいくつかを古い format.json { render :json => @object } 構文を使用するように変更しましたが、可能であればそれを避けたいと思います.
これはどうやってできるの?