0

私がやろうとしているのは、URL管理のためにYiiでカスタムルールを作成することです。

一般的なURLルールはmain.phpで設定されています

    'urlManager'=>array(
        'urlFormat'=>'path',
                    'showScriptName'=>false,
        'rules'=>array(
            '<controller:\w+>'=>'<controller>/index',
                            '<controller:\w+>/<id:\d+>'=>'<controller>/view',
            '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
            '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
        ),

.htaccessファイルも次のように設定されます

RewriteEngine on
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d


# otherwise forward it to index.php
RewriteRule . index.php

だから私はフォームにURLを持っています

local / cp / xyz / create

今、私は現在のURLが次のようなカスタムコントローラーを持っています

local / cp / xyz / create / abc

私が欲しいのは

local / cp / abc / create

4

1 に答える 1

1

「local/cp」がアプリケーションの URL、「xyz」がコントローラー、「abc」が何らかの変数 (と呼びますmyVar) であると仮定すると、次のようなルールが必要になります。

'<myVar:\w+>/<action:\w+>'=>'xyz/<action>',

また

'<myVar:\w+>/create'=>'xyz/create',
于 2012-09-16T17:56:32.587 に答える