2015-03-25 1 views
0

Это мой контроллерНе удается разрешить запрос в Yii с использованием модулей

class CarsController extends Controller { 
    public function actionIndex() { 
     echo 1; exit(); 
    } 

} 

это файл модуля:

<?php 

class CarsModule extends CWebModule { 

    public $defaultController = "cars"; 

    public function init() { 
     // this method is called when the module is being created 
     // you may place code here to customize the module or the application 
     // import the module-level models and components 
     $this->setImport(array(
      'cars.models.*', 
      'cars.components.*', 
     )); 
    } 

    public function beforeControllerAction($controller, $action) { 
     if (parent::beforeControllerAction($controller, $action)) { 
      // this method is called before any module controller action is performed 
      // you may place customized code here 
      return true; 
     } 
     else 
      return false; 
    } 

} 

моя проблема, если доступ к моему проекту как: LOCALHOST/автомобили это работает. Если я получаю доступ к localhost/cars/index, я получаю это сообщение: Невозможно разрешить запрос. Если я создам новую функцию, и я получаю такой доступ: localhost/cars/myfunction, все тот же. Я работаю над Windows. Может кто-то помочь мне с этим ?

ответ

0

Обычно правило URL по умолчанию для модулей module/controller/actin, поэтому для доступа actionIndex внутри CarsController внутри CarsModule, ваш URL должен быть локальными/Автомобили/Автомобили/индекса, не локальных/авто/индекса. Если вам не нравится url be like localhost/cars/cars/index, вы можете написать одно правило менеджера URL для того, чтобы картировать localhost/cars/cars/index в localhost/cars/index. Что-то вроде этого:

'cars/index' => 'cars/cars/index' 
Смежные вопросы