Open1

「request.referrer」を利用して削除後のリダイレクト先を制御する

no215no215

実現したい操作

  • 削除実行後、実行したページにリダイレクトする

前提条件

  • 削除ボタンが複数ページに配置されている
  • データ詳細ページは削除されるのでこの場合は root_path にリダイレクトする
controller#destroy
def destroy
  image = ImageGenerate.find(params[:id])
  if image.destroy
    if request.referrer == image_url(image)
      redirect_to root_path
    else
      redirect_to request.referrer
    end
  else
    redirect_to root_path
  end
end