Problemas "getRoles()" en backend_kumbia de Manuel. Beta2

Estimados, buenos días! estoy utilizando la excelente aplicación que ha desarrollado Manuel Aguirre (https://github.com/manuelj555/backend_kumbia).
Estoy experimentando un problema, en ocasiones me da el siguiente error:
"Fatal error: Call to a member function getRoles() on a non-object in .../default/app/libs/my_acl.php on line 59"
¿A alguien le ha pasado o tiene sospechas de que puede estar ocurriendo?
Cada vez que esto sucede, tengo que borrar el cache del navegador y se soluciona.
Saludos.

Comentarios

  • Hola, buenos días.
    Para empezar, el error es claro al indicar que no existe el método getRoles() para el modelo que lo está invocando.
    Si no es el caso, y estas utilizando las relaciones de ActiveRecord, deberás fijarte si están correctamente definidas, y si existen valores registro de Roles para Usuarios para que los pueda relacionar.
    Creo que viene por ese lado, saludos!

  • Hola Matias!
    Yo trabajo con el backend de Juan Manuel y una vez me tiro el mismo error, me volvi loco buscando el error pero finalmente lo unico q me funciono fue cerrar el navegador y al volver a abrirlo no volvio a dar ese error.
    Cosa extraña q jamas entendi...
    Saludos!!
  • tote2010, eso mismo sucede, cuando borro caché del navegador se soluciona... supongo que en alguna parte del código se rompen las sesiones, pero tengo que investigarlo mejor para hallar la solución.
    manouman, como vos decis, el error es está bien claro, por lo que vi las relaciones están muy bien planteadas. En fin, cuando encuentre la solución la publicaré aquí mismo.
    Saludos!
  • Buenas tardes Matías, leyndo un poco el código:

            //obtenemos todos los roles del usuario actual
            $user = Load::model('usuarios')->find_first(Auth::get('id'));

            $roles_id = $this->_establecerRoles($user->getRoles());

    Lo que se me ocurre, es, que cuando te dé el error hagas un var_dump($user) para saber si está devolviendo algo, así mismo con el Auth::get('id'), posiblemente se esté perdiendo el valor de la variable id almacenada en el Auth...
    Si podés hacé eso y contanos, saludos!
  • Este error sucede porque se genera un error en el id del usuario por algún update, lo que deben hacer es cerrar y volver a abrir la sesión. Les recomiendo que usen le backend más nuevo, ya que ese no se sigue actualizando
  • Gracias por tantas respuestas, si $user es false.
    Ashrey, cuál es el backend más nuevo? link?

  • Ashrey! no puedo importar la DB, tengo el siguiente error: #1005 - Can't create table 'test._action' (errno: 150)

    Y cuando inicio sesión me da el siguiente error:
    Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /home/matias/www/backend_ashrey/default/app/libs/ScaffoldController.php on line 180

    Sabes a qué se debe todo esto?
  • Me autocontesto, con respecto a la DB, el problema se soluciona cargando las tablas en forma adecuada para evitar conflictos con las restricciones de claves foráneas.
    El orden en que se deben cargar las tablas es:
    1. _role
    2. _resource
    3. _role_resource
    4. _user
    5. _action

    El parse error (default/app/libs/ScaffoldController.php on line 180) lo solucioné haciendo lo siguiente:
    $model = new $this->_model();
    $this->{$this->model} = $model->find((int) $id);

    Sin embargo el sistema me arroja warnings por doquier, la mayoría del tipo "Strict Standards: Non-static method KBackend\Libs\AuthACL::getAuth() should not be called statically". El logout no me funcionó.

    ¿Está óptima esta versión para ser utilizada Ashrey?
  • Buenas, en la página de kumbiaphp en github están los repositorios oficiales:

    https://github.com/KumbiaPHP

    Ademas pueden buscar en github para encontrar cosas útiles para usar con el framework:


    Saludos!!!
  • Matías que versión de PHP corres? y que error_reportin tienes?
  • Ya está actualizado el repo, y no debería sacar warning
Sign In or Register to comment.