Pergunta

Eu apenas aprender framework Yii e ler este tutorial sobre Yii como configurar url

mas eu não tenho nenhuma idéia, suponha que eu tenho 10 controladores, devo definir um por um os controladores no arquivo de configuração? há uma melhor maneira de url configuração amigável como www.yoursite.com/yourController/yourAction/yourID para todos controlador?

Eu acho codeigniter fez isso automaticamente ... como sobre Yii?

Foi útil?

Solução

Em /protected/config/main.php add ..

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

Na sua raiz web um .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

Outras dicas

Há geração de URL automático em Yii também. Por exemplo basta escrever no seu modelo de URL sem rota manual :

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

E URL prestados serão os seguintes:

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

Então, em nosso método de ação ActionView () usamos esses parâmetros:

...
$id=$_GET['id'];
$var=$_GET['var'];
...
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top