我有这样一个问题,我想在我的网站上显示产品的所有id,它的标题在视图中
下面是一个示例-http://localhost/yii-application/product/1
以id=1 进入产品视图
我希望是这样-http://localhost/yii application/product/TestTitle
从产品的角度来看
您需要在配置文件中更改操作参数和urlmanager。通常,在视图操作中,我们将传递id作为参数,并使用id获取产品信息。现在,我们正在更改Id,而不是通过产品的标题来获取产品信息。
frontend/controllers/ProductController.php:
class ProductController extends Controller
{
public function actionView($title)
{
//Based on title getting product information
$productData = ProductModel::find ()->where(['title'=>$title])->asArray()->one();
return $this->render('view',
[
'productData'=>$productData,
]);
}
}
frontend/views/product/view.php:
your html code for display product view
frontend/config/main.php
在这里,我们将标题作为视图acton 的参数进行传递
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'product/view/<title:w+>'=>'product/view',
-------------------------------------------
-------------------------------------------
'<controller:w+>/<action:w+>/<id:d+>' => '<controller>/<action>',
'<controller:w+>/<action:w+>/' => '<controller>/<action>',
]
]
希望它能帮助