Controlador no cambia selección

40 views
Skip to first unread message

Jose Puertas

unread,
Apr 8, 2017, 12:15:13 PM4/8/17
to ZnetDK
Hola pascal, no entiendo el porque el paginator me funciona con este controlador:

static protected function action_lister() {
        $request
= new \Request();
       
// --> Pagination
        $first
= $request->first;
        $rows
= $request->rows;
       
// --> Sort criteria
        $sortField
= $request->sortfield;
        $sortOrder
= $request->sortorder;
        $sortCriteria
= is_null($sortField) ? 'Use_nombre' : $sortField . (is_null($sortOrder) ? ' ASC' : $sortOrder == 1 ? ' ASC' : ' DESC');
       
// --> Filter criteria
        $criteria
= $request->search_criteria;
        $keyword
= '%' . $criteria . '%';
       
// 2) Request rows from the database
        $response
= new \Response();
        $jugadorDAO
= new jugadorDAO();
        $jugadorDAO
->setKeywordAsFilter($keyword);
        $jugadorFound
= array();
       
try {
            $response
->total = $jugadorDAO->getCount();
            $jugadorDAO
->setSortCriteria($sortCriteria);
            $jugadorDAO
->setLimit($first, $rows);


           
while ($row = $jugadorDAO->getResult()) {
                $jugadorFound
[] = $row;
           
}
            $response
->rows = $jugadorFound;
            $response
->success = TRUE;
       
} catch (\PDOException $ex) {
            $response
->setFailedMessage(LA_ERROR_MSG_LIST, LA_INFO_MSG_LIST . $ex->getCode());
       
}


       
return $response;
   
}


Sin embargo con este no hace su función:

 static protected function action_lister() {
        $request
= new \Request();
       
// --> Pagination
        $first
= $request->first;
        $rows
= $request->rows;
       
// --> Sort criteria
        $sortField
= $request->sortfield;
        $sortOrder
= $request->sortorder;
        $sortCriteria
= is_null($sortField) ? 'user_name' : $sortField . (is_null($sortOrder) ? ' ASC' : $sortOrder == 1 ? ' ASC' : ' DESC');
       
// --> Filter criteria
        $criteria
= $request->search_criteria;
        $filtro
= '%' . $criteria . '%';


        $response
= new \Response();
        $usuariosDAO
= new usuariosDAO();
       
//    $login = self::getUserlogin();
        $usuariosDAO
->setNameAsFilter($filtro);
        $usuario
= array();
       
try {
            $response
->total = self::getUsers($filtro, $usuario);
            $usuariosDAO
->setSortCriteria($sortCriteria);
            $usuariosDAO
->setLimit($first, $rows);
           
while ($row = $usuariosDAO->getResult()) {
                $usuario
[] = $row;
           
}
           
/* Réponse retournée au contrôleur principal */


            $response
->rows = $usuario;
            $response
->success = true;
       
} catch (\PDOException $ex) {
            $response
->setFailedMessage("Dato no encotrado", "No se ha podido encontrar el usuario (error '" . $ex->getCode() . "')");
       
}
       
return $response;
   
}


   
static public function getUsers($filtro, &$usuario) {
        $usuariosDAO
= new usuariosDAO();
        $usuariosDAO
->setNameAsFilter($filtro);
       
try {
           
while ($userRow = $usuariosDAO->getResult()) {
                $profiles
= array();
                $profileIDs
= array();
               
self::getUserProfiles($userRow['user_id'], $profiles, $profileIDs);
               
if (count($profileIDs)) {
                    $userRow
['user_profiles'] = $profiles;
                    $userRow
['profiles[]'] = $profileIDs;
               
}
               
// Original password is not provided, a dummy value is returned instead
                $userRow
['login_password'] = \General::getDummyPassword();
                $userRow
['login_password2'] = \General::getDummyPassword();
                $usuario
[] = $userRow;
           
}
       
} catch (\PDOException $e) {
            $response
= new \Response();
            $response
->setCriticalMessage("Dato no encotrado", "No se ha podido encontrar el usuario", $e, TRUE);
       
}
       
return $usuariosDAO->getCount();
   
}


La función getUsers la utilizo para que se mantengan los datos al editar el usuario, si no la pongo me elimina datos y tengo que volver a escribirlos o seleccionarlos.

Saludos

Jose Puertas

unread,
Apr 30, 2019, 3:02:41 PM4/30/19
to ZnetDK
Hola Pascal, enhorabuena por la nueva versión 2.0. El error que te comento en los anteriores post continua y no entiendo el porque, si me puedes echar una mano.

Saludos

Pascal Martinez

unread,
May 4, 2019, 10:10:54 AM5/4/19
to ZnetDK
Hola José,
Si entiendo bien, tienes 2 problemas :
1) Tu paginator no funccionna
2) No tienes todos los datos en tu formulario al editar un usuario.

Tienes que controlar con la consola de tu navegador, los datos first
y rows enviados al llamado de tu controlador y los datos rows, total y success devueltos por el controlador como mostrado sobre las fotos siguientes.

znetdk1.png

znetdk2.png


Asi, puedes saber si tu controlador funcciona bien o no.

Saludos,

Pascal


Jose Puertas

unread,
May 8, 2019, 1:08:56 PM5/8/19
to ZnetDK
Hola Pascal, el controlador funciona correcto, según los datos que recoge la imagen adjunta.

Saludos

Pascal Martinez

unread,
May 12, 2019, 4:46:40 AM5/12/19
to ZnetDK
Hola José,
Para ayudarte más, ¿puedes hacerme una pregunta más específica por favor?

Pascal
Reply all
Reply to author
Forward
0 new messages