代码之家  ›  专栏  ›  技术社区  ›  nightingale2k1

如何在yii框架中自动设置URL友好型

  •  7
  • nightingale2k1  · 技术社区  · 15 年前

    我只是学习yii框架并阅读本教程 关于 yii how to setup url

    但是我不知道,假设我有10个控制器,我应该在配置文件中逐个定义控制器吗? 是否有更好的方法来设置所有控制器的URL友好型,如www.yoursite.com/yourcontroller/youtration/yourid?

    我认为代码点火器自动完成了…伊依呢?

    2 回复  |  直到 15 年前
        1
  •  19
  •   Milan BabuÅ¡kov    15 年前

    在/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
    
        2
  •  1
  •   Sergei    15 年前

    在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'];
    ...