0

私は url を持っています。それlocalhost/user/about/id/5を like に変換したいのですがlocalhost/john.doe/about、Yii でそれを行うことは可能ですか?

john.doeユーザー名 aboutを参照 アクションを参照

コントローラ名を非表示にしたい、この場合user

助けてくれてありがとう

4

1 に答える 1

1

はい、こちらのドキュメント (Using Custom Url Classes)のようにカスタム UrlRule を使用する必要があります。次に、クラス内の URL を切り離し、ユーザー名が存在しない場合は単純に見つけてreturn false、残りの URL ルールを処理させることができます。

カスタム ルールを配置する URL ルールの順序が上になるほど、(UrlManager が最初に一致するルールで終了するため) 実行される頻度が高くなるため、一番上に配置するとパフォーマンスに影響することに注意してください。

おまけ
これは、ユーザー名をパラメーターとして通常の URL に渡すだけで、クラスに複雑な部分を実行させることができるため、URL の生成にも役立ちます。

于 2013-01-02T16:54:34.883 に答える