(YII2)错误404页面未找到

3
这是我的站点控制器(SiteController)
 public function actionIndex(){

        $data['book']=[
            ['id'=>1]
            ['id'=>2]
            ['id'=>3]
        ];
        return $this->render('index',$data);
    }
    public function actionView($id){
        $data['id']=$id;
        return $this->render('view',$data);
    }

一个简单的 index.php 文件。

<?php foreach ($book as $bok){ $id =$bok['id']?>
        <a href="index.php?r=site%2Fview?id=<?=$id?>">Views</a>
<?php } ?>

and view.php

<?= $id?>

我遇到的问题是,当访问view?id=1或其他数字时,出现了404页面未找到的错误。我知道view.php文件放在了正确的位置,如果我尝试去掉id访问view,则会出现错误提示,告诉我缺少必要的参数id。我不知道问题的原因及如何解决。请您帮忙处理一下这个问题,谢谢!

你是否启用了美化URL?如果是这样,那就需要一个.htaccess文件。 - C. Norris
不,我没有。 - STepHan
1个回答

1

你可以使用urlHelper代替直接格式化url

  use yii\helpers\Url;

 .....

<?php foreach ($book as $bok){ 
        echo "<a href='" . Url::to(['site/view', 'id' => $bok['id'] ]."'>Views</a>";
  } 
?>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接