edit @ ScrollPanelsController

スクコマ編集

url

リクエスト

認証読者*
権限オーナー作家
methodGET
urlパラメータid
POSTデータjson形式*
html
json
jsonp×
js

解説

スクコマを更新するための入力フォームを、指定されたidのデータを埋めたページで表示する。このアクションが返すフォームに対し、ユーザが入力して送信ボタンを押すことで、更新アクションScrollPanelsUpdateが起動され、指定の行が更新される。だから、フォームの表示のみの処理だけで、これといったdb処理はない。スクコマの更新とは、tを変更して順序を調整するもの。t以外のスクロールidやコマidは変更できない。ユーザからも、これらのidは意識するものではないので表示する必要はない。

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

urlパラメータ

id

  • 編集を加えたいスクコマのid。

POSTデータ

auth_token

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

戻り値

正常系

  • htmlなら、ステータスコード200 OKとともに、テンプレートから起こしたページを返す。
  • jsなら、ステータスコード200 OKとともに、部分テンプレートから起こしたページ部品を返す。

参考:ScrollPanelsEditView

例外系

  • ユーザアカウントでサインインしてなかった。(Devise)
    • htmlなら、ステータスコード302 Foundを返すとともに、サインインを促すページ(/users/sign_in)へ遷移する。
    • jsonなら、ステータスコード401 Unauthorizedを返すとともに、応答メッセージにUnauthorizedを返す。
  • 作家登録してなかった。
    • htmlなら、ステータスコード302 Foundを返すとともに、作家登録を促すページ(/authors/new)へ遷移する。
    • jsonなら、ステータスコード401 Unauthorizedを返すとともに、応答メッセージにUnauthorizedを返す。
  • 対象スクコマが存在しなかった。(ScrollPanelModel)
    • htmlなら、例外404 not_foundを返す。
    • jsonなら、例外404 not_foundを返す。
  • 対象スクコマに対する編集権限がなかった。(ScrollPanelModel)
    • htmlなら、例外403 forbiddenを返す。
    • jsonなら、例外403 forbiddenを返す。