Errores 404 con Ajax (y jQuery) en CakePHP
En este tutorial aprenderéis a gestionar los errores de CakePHP con y sin Ajax.
Lo primero de todo que tenéis que hacer es poner el debug a cero en vuestro fichero core.php, ya que con debug > 0 no funcionaría.
Ahora pasemos a crear (si no existe) el fichero /app/app_error.php con el siguiente contenido.
<?php // /app/app_error.php
class AppError extends ErrorHandler
{
function error404($params)
{
// Importamos RequestHandler para verificar si la conexión es mediante Ajax
App::import('Component', 'RequestHandler');
$this->RequestHandler = new RequestHandlerComponent();
if ($this->RequestHandler->isAjax())
{
// En caso de ser Ajax creamos la cabecera 404
$this->controller->header("HTTP/1.0 404 Not Found");
// y pasamos algunas variables a la vista que ahora crearemos
$this->controller->set('params', $params);
$this->controller->layout = 'ajax';
// Renderizamos la vista
$this->_outputMessage('ajax_error404');
}
// Aquí iría la gestión del error sin Ajax, en nuestro caso llamamos al método padre.
else parent::error404($params);
}
}
Pasemos a la creación de la vista… /app/views/errors/ajax_error404.ctp Llegir més…

