destroy @ SheetPanelsController

紙コマ削除

url

リクエスト

認証ユーザ
権限オーナー作家
methoddelete
urlパラメータid
POSTデータjson形式*
html
json
jsonp×

解説

指定されたidの紙コマを削除する。順序的に後ろのコマを前にずらす。

  • セッションまたは認証トークンからユーザアカウントを特定する。
  • ユーザアカウントから作家を取得する。
  • 紙コマモデルに編集取得を問い合わせ、その結果を対象紙コマとして取得する。
    • 要求されたidと作家を渡す。
  • 紙コマの切り詰め削除をモデルに依頼する。
  • 作業結果をクライアントに戻す。

urlパラメータ

id

  • 削除の対象となる紙コマのid

POSTデータ

auth_token

  • 外部からjsonで要求する場合、認証処置として認証トークンが必要。

戻り値

正常系

  • htmlのとき、ステータスコード302 Foundとともに、用紙を読む(sheets/id/play)ページに遷移する。
  • jsonのとき、ステータスコード200 OKを返す。

例外系

  • ユーザアカウントでサインインしてなかった。(Devise)
    • htmlなら、ステータスコード302 Foundを返すとともに、サインインを促すページ(/users/sign_in)へ遷移する。
    • jsonなら、ステータスコード401 Unauthorizedを返すとともに、応答メッセージにUnauthorizedを返す。
  • 作家登録してなかった。
    • htmlなら、ステータスコード302 Foundを返すとともに、作家登録を促すページ(/authors/new)へ遷移する。
    • jsonなら、ステータスコード401 Unauthorizedを返すとともに、応答メッセージにUnauthorizedを返す。
  • 対象紙コマがなかった。(SheetPanelModel)
    • htmlなら、例外404 not_foundを返す
    • jsonなら、例外404 not_foundを返す
  • 他人の紙コマだった。(SheetPanelModel)
    • htmlなら、例外403 forbiddenを返す
    • jsonなら、例外403 forbiddenを返す
  • 削除に失敗した
    • htmlなら、ステータスコード302 Foundとともに、対象紙コマの閲覧(show)ページに遷移する。