【发布时间】:2015-12-01 12:12:48
【问题描述】:
对于我当前(高级)基于 yii2 的项目,我只需要一个控制器(SiteController)。所以不需要在url中显示。这就是为什么我将此规则添加到前端配置:
'urlManager' => [
'rules' => array(
'<alias:product|contact|about>' => 'site/<alias>',
),
这工作正常,localhost/product 指向 localhost/site/product。
当然,我激活了 prettyUrl 并将这个默认规则添加到通用配置中:
'rules' => array(
'<controller:\w+>/<id:\w+>' => '<controller>',
'<controller:\w+>/<action:\w+>/<id:\w+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
),
现在我想访问这样的 GET 参数:localhost/product/productname。但我得到了错误:
无法解析请求“产品”
但是 localhost/site/product/productname 工作正常... “产品名称”应该是 $_GET['id']。为了实现这一点,我需要做出哪些改变?
谢谢!
【问题讨论】:
标签: php url-routing yii2