In Kohana, puoi innescare un errore 404?
-
05-07-2019 - |
Domanda
Ho un controller chiamato articoli
, che crea il modello di articoli che ottiene i dati rilevanti dal database.
Voglio, se il metodo che chiamo restituisce false
, per innescare un errore 404. Questo è quello che ho finora.
$articleName = $this->uri->segment('articles');
$article = new Articles_Model();
$data = $article->getArticleUsingSlug($articleName);
if (!$data) {
Kohana::show_404; // This doesn't work.
}
Ho appena aggiunto il mio hook personalizzato che reindirizza l'utente a un vero 404 (/ articoli / pagina-non-trovato /) come attivato da Kohana, ma c'è un modo in cui posso invocare il suo metodo 404 interno per fare in modo che Kohana dia elaborare il mio controller e utilizzare il mio nuovo hook?
Soluzione
Questo funziona per me:
Event::run('system.404');
Quale versione di Kohana stai usando?
Altri suggerimenti
Kohana / Generale / Gestione degli errori / Kohana_404_Exception
/**
* @param string URL of page
* @param string custom error template
*/
throw new Kohana_404_Exception([string $page [, string $template]]);
Kohana Docs ti dice come fare esso:
throw HTTP_Exception::factory(404, 'File not found!');