2017-02-10 8 views
0
'urlManager' => [ 
      'enablePrettyUrl' => true, 
      'showScriptName' => false, 
      'rules'   => [ 
       [ 
        'class' => 'yii\web\GroupUrlRule', 
        'prefix' => 'user', 
        'rules' => [ 
         # Url Path   # Path to controller 
         'registration/'  => 'FAKE DATA', 
         'password-recovery/', 
        ], 
       ] 

      ], 

私の経路 'registration /'と 'password-recovery /'は、コントローラへのパスによって決まるのではなく、URLパスによってのみ決定されます。あなたが最初のもので見ることができるように、私は '偽のデータ'を入れ、第2のものには何も置かなかった。 私はルートがどのように働いているのか理解していません。 この場合、コントローラルートへのパスはどのように指定できますか?コントローラへの経路を無視する経路

EDIT:実際、 'rules'セクション全体は無視されます。理由は分かりません。

答えて

0

AfaikのGroupUrlRuleは、パターンとルートに同じプレフィックスを共有するルールを単純化するためにのみ使用されます。あなたはこれらのルールを持っている場合は、

[ 
    'class' => 'yii\web\GroupUrlRule', 
    'prefix' => 'user', 
    'rules' => [ 
     # Url Path   # Path to controller 
     'registration/'  => 'fake', //there should be actionFake on UserController 
     'password-recovery/' => '', 
    ], 
] 

URL user/registrationUserControlleractionFakeをヒットします。あなたのUserControllerの内容を表示すると便利です。

関連する問題