2010-04-16 1 views
2

Я видел примеры кода на this article, но выброс Controller_Exception_404 вызывает ошибку.Какие исключения я должен бросать изнутри Коханы 3?

Я только что выбрал простые исключения. Я помню, что в Kohana 2.3 были разные, которые вы могли бы бросить, в зависимости от ситуации.

У кого-нибудь есть список того, какие исключения следует бросать, когда?

ответ

2

Я думаю, что исключение вы хотите Kohana_Request_Exception. Вот список всех исключений Kohana определяет (генерируется с использованием grep -iR "class .*Exception" .):

class Validate_Exception extends Kohana_Validate_Exception {} 
class Kohana_Validate_Exception extends Kohana_Exception { 
class Kohana_Request_Exception extends Kohana_Exception { } 
class Kohana_Exception extends Exception { 
class Kohana_View_Exception extends Kohana_Exception { } 

Если вы хотите код ответа 404, я думаю, вы также должны будете сделать это в вашем контроллере

$this->request->status = 404; 

Я не знаю, что такое «официальная» лучшая практика, но это то, что я нашел, играя вокруг.