2012-04-19 32 views
9

Tôi đang sử dụng khung công tác Yii và tôi muốn tạo lỗi 404 nếu không tìm thấy mã recode trong cơ sở dữ liệu. Có cách nào thông minh để gọi Yii default error handler.Cách tạo lỗi 404 mạnh trong Yii

cảm ơn trước.

Trả lời

24
throw new CHttpException(404,'The specified post cannot be found.'); 

http://www.yiiframework.com/doc/guide/1.1/en/topics.error

+0

cám ơn nó đã giúp tôi rất nhiều. – Arif

+0

@ imre-l Có thể trả lại một lỗi Http mà không phải ném một ngoại lệ? Bởi vì tôi đang sử dụng MailLogRoute và bây giờ thậm chí đơn giản 403 lỗi được gửi đến cho tôi. Đó là một lỗi có chủ ý, do đó, không phải là một thất bại của một lập trình vì vậy tôi nghĩ rằng nó không phải là một ngoại lệ. Có cách nào 'sạch hơn' không? > chỉ trả về một câu trả lời http với 403 mà không sử dụng CHttpException? – Highmastdon

+0

Bạn đã thử sử dụng "200" làm mã chưa? Đó là "OK", vì vậy tôi nghĩ rằng máy chủ nên để nó vượt qua. –