7

私はちょうどyiiフレームワークを学んでいて、yiiのURLの設定方法に関するこのチュートリアルを読んでいます

しかし、10個のコントローラーがあるとします。構成ファイルでコントローラーを1つずつ定義する必要がありますか? すべてのコントローラーに対して www.yoursite.com/yourController/yourAction/yourID のような URL フレンドリーを設定するより良い方法はありますか?

codeigniter は自動的にそれを行ったと思います... yii はどうですか?

4

2 に答える 2

19

/protected/config/main.phpに追加します。

    'urlManager'=>array(
        'urlFormat'=>'path',
        'showScriptName' => false,      
        ),
    ),

Webルートで.htaccess.。

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php
于 2009-09-26T13:22:01.897 に答える
1

Yii にも自動 URL 生成があります。たとえば、手動ルートなしでそのような URL をテンプレートに書き込むだけです。

<?php echo CHtml::link('topic title',array('topic/view','id'=>$topic->id,'var'=>'123')); ?>

レンダリングされる URL は次のようになります。

/topic/view/id/1/var/123

次に、アクション actionView() メソッドで次のパラメーターを使用します。

...
$id=$_GET['id'];
$var=$_GET['var'];
...
于 2009-08-30T10:57:53.893 に答える