как автоматически настроить удобный URL-адрес в yii Framework
-
19-09-2019 - |
Вопрос
Я только что изучил фреймворк yii и прочитал это руководство о yii как настроить URL
но я понятия не имею, предположим, у меня есть 10 контроллеров, должен ли я определять один за другим контроллеры в конфигурационном файле?есть ли лучший способ настроить удобный URL, например www.yoursite.com/yourController/yourAction/yourID для всех контроллеров?
Я думаю , codeigniter сделал это автоматически ...как насчет yii ?
Решение
В /protected/config/main.php добавить..
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName' => false,
),
),
В корневом каталоге вашего веб-сайта есть файл .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
Другие советы
В Yii тоже существует автоматическая генерация URL-адресов.Например, просто напишите в своем шаблоне такой URL без ручной маршрут:
<?php echo CHtml::link('topic title',array('topic/view','id'=>$topic->id,'var'=>'123')); ?>
И отображаемый URL-адрес будет следующим:
/topic/view/id/1/var/123
Затем в нашем методе action ActionView() мы используем эти параметры:
...
$id=$_GET['id'];
$var=$_GET['var'];
...