Tengo un problema con el uso del paginador.... y no lo he podido implementar estoy tratando de correr el del ejemplo de usuario pero no he logrado nada.....
Aqui el Codigo el Cuestion
usuario_controller.php
<?php
class UsuarioController extends ApplicationController {
private $_per_page = 7;
/**
* Formulario de busqueda
**/
public function buscar() {
$this->nullify('page', 'conditions');
}
/**
* Paginador
**/
public function lista($page='') {
/**
* Cuando se efectua la busqueda por primera vez
**/
if($this->has_post('usuario')) {
$usuario = $this->post('usuario', 'trim', 'addslashes');
if($usuario) {
$this->conditions = " nombre LIKE '%{$usuario}%' ";
}
/**
* Paginador con condiciones o sin condiciones
**/
if(isset($this->conditions) && $this->conditions) {
$this->page = $this->Usuario->paginate($this->conditions, "per_page: $this->_per_page", 'page: 1');
} else {
$this->page = $this->Usuario->paginate("per_page: $this->_per_page", 'page: 1');
}
} elseif($page='next' && isset($this->page) && $this->page->next) {
/**
* Paginador de pagina siguiente
**/
if(isset($this->conditions) && $this->conditions) {
$this->page = $this->Usuario->paginate($this->conditions, "per_page: $this->_per_page", "page: {$this->page->next}");
} else {
$this->page = $this->Usuario->paginate("per_page: $this->_per_page", "page: {$this->page->next}");
}
} elseif($page='prev' && isset($this->page) && $this->page->prev) {
/**
* Paginador de pagina anterior
**/
if(isset($this->conditions) && $this->conditions) {
$this->page = $this->Usuario->paginate($this->conditions, "per_page: $this->_per_page", "page: {$this->page->prev}");
} else {
$this->page = $this->Usuario->paginate("per_page: $this->_per_page", "page: {$this->page->prev}");
}
}
}
}
?>
Lista.phtml
<table>
<tr>
<th>id</th>
<th>nombre</th>
</tr>
<?php foreach($page->items as $p): ?>
<tr>
<td><?= $p->id ?></td>
<td><?= h($p->nombre) ?></td>
</tr>
<?php endforeach; ?>
</table>
<br>
<?php if($page->prev) echo link_to('usuario/lista/prev', 'Anterior') ?>
<?php if($page->next) echo ' | ' . link_to('usuario/lista/next', 'Siguiente') ?>
En el Navegador me sale lo siguiente:
Notice: Undefined variable: page in /var/www/stcel/apps/default/views/usuario/lista.phtml on line 6
Notice: Trying to get property of non-object in /var/www/stcel/apps/default/views/usuario/lista.phtml on line 6
Warning: Invalid argument supplied for foreach() in /var/www/stcel/apps/default/views/usuario/lista.phtml on line 6
id nombre
Notice: Undefined variable: page in /var/www/stcel/apps/default/views/usuario/lista.phtml on line 16
Notice: Trying to get property of non-object in /var/www/stcel/apps/default/views/usuario/lista.phtml on line 16
Notice: Undefined variable: page in /var/www/stcel/apps/default/views/usuario/lista.phtml on line 17
Notice: Trying to get property of non-object in /var/www/stcel/apps/default/views/usuario/lista.phtml on line 17
Que puede ser gracias por su ayuda...
Ademas debo mencionar que me gustaria implementar un paginador en el index para que salga siempre al inicio como si se tratase del Browse de StandarForm.
Comentarios
Undefined variable
en el kumbia 0.5 hay q declarar o debes tener las variables cargadas antes que pasen a la vista
ej:
en tu controlador
$this->page = 1
Y en la vista ya puedes trabajar con la variable $page, si trabajas con la variable y no haz hecho nada en el controlador con la variable lanzara el error mensionado.
deivinsontejeda NOT SPAM kumbiaphp.com