2012-10-22 7 views
12

Utworzono jeden projekt w yii, a mój domyślny kontroler wskazuje na kontroler lokacji. Chcę to zmienić z innymi i gdzie mogę określić domyślny kontroler i akcję w yii.gdzie możemy określić domyślny kontroler i akcję w yii

+0

domyślny kontroler/pierwszy kontroler w Yii to ** lokalny kontroler **, ponieważ jego widok to "site" – raghul

+0

Wypróbuj to w config 'defaultController' => 'myController' – Sergey

+0

możliwy duplikat [Jak ustawić domyślny kontroler w Yii] (http: //stackoverflow.com/questions/11373057/how-to-set-default-co ntroller-in-yii) – Ankur

Odpowiedz

15

dodać konfigurację w main.php config

return array(
    'name' => 'Web Application', 
    'defaultController' => 'home', 
    ...... 
); 
+1

Można również określić akcję wraz z nazwą kontrolera, np. 'home/index'. – Jon

2

idealnym rozwiązaniem do zmiany domyślnego kontrolera. Częścią pytania było również zmienić domyślną akcję. Jeśli masz ustawione 'defaultController' => 'home', domyślna akcja będzie 'index' (unless set otherwise), można to zmienić w sterowniku tak:

class HomeController extends CController 
{ 

    public $defaultAction = 'someotheraction'; 

    public function actionSomeotheroaction() 
    { 

    } 

} 
2

Można dodać dowolną gdzie w tablicy powrotnej chroniony/main.php

return array(
    ...... 
    'defaultController' => 'index', 
    ...... 
); 

jeśli pracujesz w bazie modułów następnie można dodać

'defaultController' => 'shop/index', 

Shop jest moduł i indeks jest kontroler

0

Można ustawić kontroler do fabrycznych sterownika w katalogu projektu chronionego/main.php dodać ten kod w tablicy jak $ configArray = array()

$configArray = array 
(
    'name'=>'Web Appname', 
    'defaultController'=>'index' 
    ...... 
); 

i ustawić domyślną akcję w kontroler

class NameController extends AdminCoreController 
{ 
    public $defaultAction = 'index'; 
}