私は、アプリのメインビューをロードする必要があるすべての関数で(URIヘルパーからの)redirect()を使用します。同じ機能にリダイレクトします。私の目標は、ページの機能(他のコントローラーを呼び出す)を使用している場合でも、同じクリーンなuriを取得することです。それは良い習慣ですか?いつredirect()を使用する必要がありますか?同様の結果を得るための他の解決策はありますか?
これは明確にするためのコードです。
これがコントローラーです:
<?php
class Main_controller extends Controller
{
function index()
{
$this->load->view(page);
}
function page_feature()
{
/* some stuff */
redirect('main_controller.php','refresh');
}
}
このルートルールで:
$route['([a-z-A-Z1-9_]+)'] = "main_controller";
uriは次のようになります。myapp.com/somethingこのページには、次のようなフォームのように、main_controller(または他のコントローラー)の他の関数を(送信時に)呼び出す機能があります。
<form action="myapp.com/another_controller/method" method="post">
このクエリ「/another_controller/ method」の最後で、redirect('main_controller')を使用して新しいデータを含むビューを表示し、URIを「myapp.com/another_controller/」ではなく「myapp.com/something」のままにします。方法"。
これが良い習慣なのか悪い習慣なのか、そしてその理由を知りたかったのです。