ラボ > FuelPHP:エラー絡み

fuelphp ルーティングで「hoge/edit/123」と「hoge/foo/edit/123」の問題

ルーティングで設定していないのに・・・違うトコに飛ばされる

作成日:2020-05-16, 更新日:2020-05-16

基本

深く調査しておらず・・・詳細は不明。とりあえず分かったコト、対応したコトをメモる。

経緯

1.「hoge/edit」というPATHで編集formを表示するようにしていた
→「コントローラ/hoge/edit.php」の「acction_index()」を呼びだす

2.「hoge/foo/edit」というPATHを新たに増やした
→「コントローラ/hoge/foo.php」の「acction_edit()」を呼びだす

当初は問題無く動いていた。
気づくと・・・両方とも「コントローラ/hoge/edit.php」の「acction_index()」を呼びだすようになっていた。

調査

▼ひとまずありがちなミスを疑う
・リンクのPATH指定のミス→問題なし
・「コントローラ/hoge/foo.php」の「acction_edit()」の中で「hoge/edit」にリダイレクト→リダイレクトなし
・「コントローラ/hoge/foo.php」の「acction_edit()」以外(before()やビューなど)で「hoge/edit」にリダイレクト→リダイレクトなし

そもそも「コントローラ/hoge/foo.php」の「acction_edit()」に入っていないので、見当違いの調査をしていたコトになる

▼次に・・・今さらだけどルーティングを疑う
・ルーティングで変な設定をしている→していない

▼最後に・・・
・coreファイルとか調べるのが面倒なので・・・挫折

対策

・「hoge/foo/edit」を「hoge/foo/modify」に変更
・「コントローラ/hoge/foo.php」の「acction_edit()」を「action_modify()」に変更

ひとまず解決。

めも

・Xampp+FuelPHPの組み合わせの問題→未調査