投稿日時: 2016/11/14
牟田口
こんにちは。牟田口です。
NetCommos3プラグイン開発しています。
cakephp2.xメモです。
- cakephpの`FormHelper`で`$options['type'] =‘put`は編集フォーム。
- $this->request->dataに、モデルのプライマリキー の値が空でなければ、編集フォームになる。
- 編集フォームの`<input type="hidden" name="_method" value="PUT" />`は、cookbookでは《HTTPメソッド》と表現していた。
- RFC 7231のHTTPメソッドでも、《置換するもの》として定義されていた。
なるほど、納得した。
情報元
▼ フォームの作成 - FormHelper - CakePHP Cookbook 2.x ドキュメント
http://book.cakephp.org/2.0/ja/core-libraries/helpers/form.html#id1
《 <form id="RecipeEditForm" method="post" action="/recipes/edit/5">
<input type="hidden" name="_method" value="PUT" />
注釈
これは編集フォームなので hidden の入力項目が生成され、 デフォルトの HTTP メソッドは上書きされます。》
▼ create() のオプション - FormHelper - CakePHP Cookbook 2.x ドキュメント
http://book.cakephp.org/2.0/ja/core-libraries/helpers/form.html#create
《$options['type'] このキーは生成するフォームのタイプを指定します。 有効な値は ‘post’, ‘get’, ‘file’, ‘put’, ‘delete’ です。》
▼ 4.3.4. PUT - RFC 7231 - HTTP/1.1: Semantics and Content (日本語訳)
http://www.hcn.zaq.ne.jp/___/WEB/RFC7231-ja.html#section-4.3.4
《PUT 要請は:
[ 同封された表現が、ターゲットリソースの状態を置換する ]ものとして定義される。 》