如何从 url yii2 中隐藏模块名称
How to hide module name from url yii2
我是yii2的新手。
我的域名。com/organisation/banks/index
从上面url我想删除组织。
我将以下代码添加到组件部分下的配置文件中。
'urlManager' => [
'showScriptName' => false,
'enablePrettyUrl' => true,
'rules' => [
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>'=>'modules/<controller:\w+>/<action:\w+>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
],
]
但还是不行。
有什么办法吗?
谢谢
如果要隐藏多个 URL,恐怕您必须为每个 URL 添加规则,例如:
'banks/index' => 'organisation/banks/index',
'something/another' => 'organisation/something/another',
如果此模块使用了唯一的控制器名称,您可以通过添加通用规则使其更容易。例如,如果控制器的名称是 banks
并且 在应用程序的顶级命名空间级别下没有 BanksController
您可以添加:
'banks/<action>' => 'organisation/banks/<action>',
如果 organisation
模块是您的应用使用的唯一模块,并且您不需要顶级命名空间级别的控制器,您可以添加:
'' => 'organisation',
因此,输入域 URL 地址可让您直接进入 organisation
模块默认路由。
我是yii2的新手。
我的域名。com/organisation/banks/index
从上面url我想删除组织。
我将以下代码添加到组件部分下的配置文件中。
'urlManager' => [
'showScriptName' => false,
'enablePrettyUrl' => true,
'rules' => [
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>'=>'modules/<controller:\w+>/<action:\w+>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
],
]
但还是不行。
有什么办法吗?
谢谢
如果要隐藏多个 URL,恐怕您必须为每个 URL 添加规则,例如:
'banks/index' => 'organisation/banks/index',
'something/another' => 'organisation/something/another',
如果此模块使用了唯一的控制器名称,您可以通过添加通用规则使其更容易。例如,如果控制器的名称是 banks
并且 在应用程序的顶级命名空间级别下没有 BanksController
您可以添加:
'banks/<action>' => 'organisation/banks/<action>',
如果 organisation
模块是您的应用使用的唯一模块,并且您不需要顶级命名空间级别的控制器,您可以添加:
'' => 'organisation',
因此,输入域 URL 地址可让您直接进入 organisation
模块默认路由。