2016-01-20 28 views
0

我有很多類似的規則如下:Yii2網址經理正確生成的URL,但無法解析命名參數

'/manager/stale-zwroty/zmien/<idDomain:\d+>' => '/owner/chat-texts/update', 

網址是否正確產生,但是當我試圖進入頁面/manager/stale-zwroty/zmien/1它不能夠讀取idDomain參數值。

我注意到UrlRule實例對應上面的規則有空屬性$this->placeholders

我從作曲家安裝了最新的Yii版本。以前它工作正常。

這裏是UrlRule實例結果var_dump

object(yii\web\UrlRule)#59 (15) { 
    ["name"]=> 
    string(42) "/manager/stale-zwroty/zmien/<idDomain:\d+>" 
    ["pattern"]=> 
    string(50) "#^manager/stale-zwroty/zmien/(?P<ac4b8b691>\d+)$#u" 
    ["host"]=> 
    NULL 
    ["route"]=> 
    string(23) "owner/chat-texts/update" 
    ["defaults"]=> 
    array(0) { 
    } 
    ["suffix"]=> 
    NULL 
    ["verb"]=> 
    NULL 
    ["mode"]=> 
    NULL 
    ["encodeParams"]=> 
    bool(true) 
    ["placeholders":protected]=> 
    array(0) { 
    } 
    ["_template":"yii\web\UrlRule":private]=> 
    string(39) "/manager/stale-zwroty/zmien/<idDomain>/" 
    ["_routeRule":"yii\web\UrlRule":private]=> 
    NULL 
    ["_paramRules":"yii\web\UrlRule":private]=> 
    array(1) { 
    ["idDomain"]=> 
    string(8) "#^\d+$#u" 
    } 
    ["_routeParams":"yii\web\UrlRule":private]=> 
    array(0) { 
    } 
    ["_placeholders":"yii\web\UrlRule":private]=> 
    array(1) { 
    ["ac4b8b691"]=> 
    string(8) "idDomain" 
    } 
} 

回答

0

我已經找到了答案。

Yii2 UrlManager從緩存中獲取url-rules。我刪除了runtime/cache的內容,現在它正在工作。