我使用此代码显示类别中的帖子
public function actionCategoryList($id)
{
$criteria=new CDbCriteria(array(
'condition'=>'status='.Post::STATUS_PUBLISHED,
'order'=>'create_time DESC',
));
if(isset($_GET['tag']))
$criteria->addSearchCondition('tags',$_GET['tag']);
$criteria->addSearchCondition('id_category',$id);
$dataProvider=new CActiveDataProvider('Post', array(
'pagination'=>array(
'pageSize'=>Yii::app()->params['postsPerPage'],
),
'criteria'=>$criteria,
));
$this->render('index',array(
'dataProvider'=>$dataProvider,
));
}
但仍会显示在添加类别ID 1中的类别后的类别ID 10 View Post 例如,下图: 类别ID是10,但除了显示
www.mysite.com/categoryList/10
ID 1仍显示在类别中 www.mysite.com/categoryList/1
答案 0 :(得分:0)
我认为你的问题是url-manager,你有两个解决方案:
您应该使用www.mysite.com/categoryList/id/1
代替www.mysite.com/categoryList/1
。
如果您想使用www.mysite.com/categoryList/1
网址,则需要在网址管理器中定义规则:
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'caseSensitive'=>false,
'rules'=>array(
'categoryList/<id:\d+>'=>'categoryLis/id',
....
),
),