problema con before_filter

edited febrero 2009 in Dudas/Problemas
tengo el siguiente codigo
public function before_filter(){
			if(Session::get_data("nombre_usuario")=="minombre"){
				Flash::notice("ingreso permitido");
				return true;
				}else{
					
					Flash::error("El usuario debe estar autenticado para usar este mdulo");
					return false;
				}
		}

el codigo se encuentra en el controlador admin, el cual tiene su respectiva vista


al intentar ingresar al modulo miaplicacion/admin

me sale el siguiente error

El usuario debe estar autenticado para usar este mdulo

Fatal error: Call to a member function get_view_cache() on a non-object in C:\xxxx\xxxxxx\xxx\library\kumbia\kumbia.php on line 436


Nota:, al logearme y cumplirse la condicion dle if, el flash de ingreso permitido aparece normalmente y no sale ningun error, es decir el error solo aparece cuando no se ucmplen las condiciones aunque el mensaje de "El usuario debe estar autenticado para usar este mdulo" si aparece..

Comentarios

  • que version de kumbia tienes instalada?
  • edited 2:43
    Baja la version que esta alojada en launchpad.

    Otra cosa, al usar before_filter, con return false, interrumpes la ejecucion y no te mostrara los mensajes flash con formato, como solución te planteo que en vez de hacer return false, hagas un route_to a alguna accion con una vista especial para desplegar los errores.
       public function before_filter(){
             if(Session::get_data("nombre_usuario")=="minombre"){
                Flash::notice("ingreso permitido");
                return true;
                }else{
                   Router::route_to('action: error');
                }
          }
    
       public function error() {
           Flash::error("El usuario debe estar autenticado para usar este mdulo");
       }
    

    Saludos
Sign In or Register to comment.