Tôi đã thiết lập trình xử lý lỗi vào trang Yii của mình.Trình xử lý lỗi Yii không hoạt động khi không tìm thấy tệp xem
Đây là mã.
main.php
'errorHandler'=>array(
// use 'site/error' action to display errors
'errorAction'=>'site/error',
),
SiteController.php
public function actionError() {
if ($error = Yii::app()->errorHandler->error) {
if (Yii::app()->request->isAjaxRequest)
echo $error['message'];
else
$this->render('error', $error);
}
}
trang web/error.php fi
<?php
$this->pageTitle=Yii::app()->name . ' - Error';
$this->breadcrumbs=array(
'Error',
);
?>
<h2>Error <?php echo $code; ?></h2>
<div class="error">
<?php echo CHtml::encode($message); ?>
</div>
Nó đang làm việc ne và chuyển hướng đến trang lỗi tùy chỉnh này Nếu URL sai hoặc gọi sai chức năng của người dùng. Ví dụ: Nếu Trong bộ điều khiển trang web tôi đã đặt chức năng contact
và URL cuộc gọi của người dùng như thế này localhost.com/site/contactsdffe
thì nó sẽ chuyển hướng đến trang lỗi tùy chỉnh này.
Nhưng vấn đề là ở đây.
Nếu chức năng điều khiển gọi liên hệ xem và tôi chưa thiết lập chế độ xem/trang/contact.php thì trang này không được gọi là trang lỗi tùy chỉnh này. Nó mang lại cho tôi một lỗi ngoại lệ này.
CException: SiteController không thể tìm thấy chế độ xem được yêu cầu "liên hệ".
Tôi không biết tại sao trình xử lý lỗi không hoạt động cho trường hợp này và Vui lòng cho tôi biết rằng Làm thế nào tôi có thể hiển thị trang lỗi tùy chỉnh cho loại lỗi này.
Mọi trợ giúp sẽ đánh giá cao. Cảm ơn trước !