cakePHP3を用いて、登録画面を作成しております。
render()メソッドで別のビューを呼び出した時のURL設定の方法がわからず、困っています。
構成
- コントローラ
sample.php
- アクション
index
regist
- ビュー
index.ctp
処理概要
- 別ページから
sample.php
のindex
アクション呼び出し。 index
アクション内で初期処理を行い、index.ctp
呼び出し。index.ctp
画面のフォームに登録内容を入力し、登録ボタンを押下⇒regist
アクション呼び出し。- 入力内容をチェックし、問題なければ登録する。
- render("index")で、
index.ctp
を呼び出し
URL
indexアクションは、config/routes.php
で、下記のように設定し、URLはhttp://localhost/Project/Hoge/regist
としています。
$routes->connect('/Hoge/regist/*', ['controller' => 'sample', 'action' => 'index']);
要件
- 処理概要5で、登録後
index.ctp
に遷移した際も、URLをhttp://localhost/Project/Hoge/regist
としたい。 - 処理概要5で、登録後
index.ctp
に遷移した際に、処理概要3で入力した、フォームの値を保持したい。
現状
処理概要5でindex.ctp
を呼び出した際は、処理概要3で入力したフォームの値を保持できておりますが、
URLに関しては、http://localhost/Project/sample/regist
となっています。
上記要件を満たすよう修正したいのですが、どのような修正が必要でしょうか。
補足
render()を使用することにこだわっていませんが、
render()を使用することで、フォームの値が保持されるため使用しております。
フォームにvalue=~で初期値を設定する方法はできれば避けたいです。
あなたの回答
tips
プレビュー