2008/1/13 Stcggtc <[EMAIL PROTECTED]>:
>
> Hola a todos, tal vez alguien me pueda ayudar... Uso cakephp 1.2 y
> genere los MVC con el cake bake.
>
Buenas Stcggtc,
> En una vista en la que se visuliza UN registro de una tabla A, al pie
> aparecen MUCHOS registros de una tabla B que se encuentra relacionada
> a la primera (A hasmany B).
>
> Como puedo personalizar la vista de esa tabla B? darle un orden,
> mostrar menos campos, incluso tal vez paginar?
>
1) Para darle un orden tenés dos opciones:
a) Setearlo en la relación:
class A extends Model {
var $hasMany = array (
'B' => array (
'className' => 'B',
'foreignKey' => 'b_id',
'order' => 'A.campo1 DESC, B.campo2 ASC'
)
);
b) Setearlo en el finder:
$order = 'A.campo1 DESC, B.campo2 ASC';
find(string $conditions, array $fields, string $order, int $recursive)
Creo que también se puede usar array notation:
$order = array('A.campo1 DESC', 'B.campo2 ASC');
2) Para traer menos campos, podés setear el capo $fields del método que uses
para buscar:
$fields = 'A.campo1, A.campo3, B.campo1 );
find(string $conditions, array $fields, string $order, int $recursive)
Creo que también se puede usar array notation:
$fields = array('A.campo1', 'B.campo2', 'A.campo2' );
Para paginar no se exactamente lo que necesitás, y tampoco lo tengo fresco,
pero creo que en este artículo podes encontrar algo de info:
http://bakery.cakephp.org/articles/view/advanced-pagination-1-2
Un abrazo,
--
Matias Lespiau
http://www.gignus.com/
--~--~---------~--~----~------------~-------~--~----~
Has recibido este mensaje porque estás suscrito a Grupo "CakePHP-es" de Grupos
de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a [email protected]
Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED]
Para obtener más opciones, visita este grupo en
http://groups.google.com/group/CakePHP-es?hl=es.
-~----------~----~----~----~------~----~------~--~---