0

家、食べ物、飲み物の3つのコントローラーがあります。ホームコントローラーデフォルトのコントローラーにしたい。そして私は次のようにroutes.phpファイルに書き込みました:

 $ route ['default_controller'] = "home";

 $ route ['404_override '] ='';

次に、各コントローラーで次のようにコードを作成しました。

コントローラーhome.php

class Home extends CI_Controller{
    public function __construct() {
        parent::__construct();
    }

    public function index(){

    }

    public function info(){

    }
}

コントローラーfood.php

class Food extends CI_Controller{
    public function __construct() {
        parent::__construct();
    }

    public function index(){

    }

    public function foodMenu(){

    }
    public function foodJenis(){

    }

}

コントローラーdrink.php

class Drink extends CI_Controller{
    public function __construct() {
        parent::__construct();
    }

    public function index(){

    }

    public function drinkMenu(){

    }
    public function drinkJenis(){

    }

}

このURLをwww.mydomain.com/home、www.mydomain.com/food、www.mydomain.com/food/foodmenu、www.mydomain.com/food/foodjenis、www.mydomain.com/drinkのように作成したい、www.mydomain.com / drink / drinkmenu、www.mydomain.com / drink/drinkjenis。

しかし、私がURL www.mydomain.com/food/foodmenuにいて、www.mydomain.com / food / foodjenisに向かったとき、表示されるURLはwww.mydomain.com/food/food/foodjenisです。URLの「食品」コントローラー名を2つに分割します。それを処理する方法。私を助けてください。ありがとうございました :(

4

3 に答える 3

1

これを解決する 1 つの方法は、baseタグを使用することです。

ドキュメント ヘッドのどこかに (css または js を含める前に) put

<base href='http://mysite.com'>

その後、CI アプリケーションで相対リンクを自由に使用できます。

于 2012-12-24T13:39:38.267 に答える
1

リンクはどのように作成しますか?

相対リンクを作成しようとすると問題があると思います.htmlは食品をフォルダーとして見ているので、リンクを作成すると

<a href="food/foodjenis"></a>

あなたが書いたようにリンクを作成します www.mydomain.com/food/food/foodjenis

ただし、CI url を使用する場合

  <a href="<? php echo site_url('food/foodjenis') ?>"></a>

あなたが意図したように動作します。

于 2012-12-24T13:40:59.793 に答える
0

CIの構成ファイルにベースURLを設定しましたか?はいの場合。相対パスで試してください。like food/foodjenis

<a href="<? php echo base_url('food/foodjenis') ?>"></a>
于 2012-12-24T14:53:06.970 に答える