2017-03-10 27 views
0

URLのコントローラ名を変更しようとしていました。モジュールのコントローラ名を変更することで可能です。しかし、我々がそれを行うことができる場合、URLマネージャを介して。いずれ良くなるだろう。コントローラ名の変更/名前変更URL:Yii2

モジュール:ユーザー、 コントローラー:API、 アクション:インデックス

今、

'urlManager' => [ 
    'enablePrettyUrl' => true, 
    'showScriptName' => false, 
    'rules' => [ 
     '<controller:(api)>/<action:\w+>/<id:[a-z0-9]+>' => 'user/<controller>/<action>', 
     '<controller:(api)>/<action>' => 'user/<controller>/<action>', 
    ] 
]; 

そして、私はそれを介してアクセスすることができます。

http://dev.example.com/api/index 

しかし、私は

http://dev.example.com/world/index 

私はそれをどのように行うことができますし、それを変更するには探していましたか?どんなヘルプ/ヒント/提案も相当なものです。

答えて

0

ルールアレイにアイテムを追加することで、カスタムURLルールを作成できます。

だから、あなたのケースでURLルールhereに関する規則配列

'world/index' => 'api/index' 

あなたが読むことができるより多くにこれを挿入します。

0

もサードパーティ製のコントローラを使用していて、そのクラス名を制御することはできませんとき、あなたはそれが便利ControllerMap

を使用しています。

'controllerMap' => [   
     'api' => 'app\controllers\WorldController', 
         ] 
:例えば基本 予め又はweb.phpでmain.phpにおけるコンポーネントのコード以下

関連する問題