大学生エンジニアの技術ブログ

Technical blog

Learn More
投稿日:2019年01月19日

【laravel】routesでのpatchの使い方

ゴール

laravelのroutesで使用するpatchの使い方がわかっている状態

 

コード&コードの解説

 

コマンドでroutesの確認

 

↑でrouteの確認ができる.

 

 

 

 

formタグ

fromタグについて簡単に復習すると, fromのactionの部分は本来CGI(Common Gateway Interface(コモンゲートウェイインターフェイス))と呼ばれる. ここでフォームで入力されたデータの送信先を指定する. 今回のコードの書き方だと, home部分から /posts/ユーザid のURIにリクエストを送ると言う動作になる.

 

{{ csrf_field() }}

以下の記事を参考にして調べた.

 

 

 

Laravel is requiring this field to be sent with the request so that it can verify the request is not a forgery when posted back.

どうやら, laravelがリクエストが偽造されたものでないか確認できるように, リクエストを送る場所?(空間?)を定義しているらしい。意図としては, CSRF(Cross-Site Request Forgery)対策のために設置ようだ.

 

 

$post

このコードにおけるポストはmodelで定義されたカラムのとある記事に関するレコードを取得したもので含まれる. その中で$post->idは記事のuniqueKeyである.

 

edit.blade.phpの$postは↓の内容になっている.

 

 

 

 

 

 

 

 

$request

フォームから入力されたデータらがobject形式で格納されている. また$postはedit.blade.php画面と同じものであり, 記事のレコードが含まれている.

 

 

 

じゃあpacthってなんなの?

前置きが長くなってしまったが, 本題に入る. ここまできて, pacthとは更新系の処理を行なっていることは想像できる. pacthの英単語の意味は「当て布を当てる」であることから,「 修正をする」といったような意味でもあるのだろう.

 

ググってみるとすごいわかりやすい記事あったので紹介する.

 

 

patch:リソースを部分更新するメソッドです。例えば、記事のタイトルだけを更新する、記事の本文だけを更新するといったインターフェイスを提供する場合に使います。

 

なるほど.リソース(データ)を部分更新するときに用いるhttp methodであるということか.

 

 

最後まで読んで頂き
ありがとうございました。
SNS等でのシェアが頂ければ幸いです。

Created by KATUO - Copyright 2019