El ideal es tener un modelo por tabla y usar, en el controlador, la variable $uses o bien la función App::uses('MyModel', 'Model'); De esta forma puedes usar toda la potencia de la paginación y de la función find.
On 6 jun, 10:29, william insignares <independencia...@gmail.com> wrote: > Eso es verdad Señor Pau ( Efectivamente, la sql puede ser la que tu quieras > sobre las tablas que necesites, no tiene que porque estar relacionada con > el modelo que llama a query. ); pero para seguir la lógica lo mas correcto > es hacer la sql según el modelo que se necesita, bueno eso es en cuanto las > buenas practicas de programación > > El 6 de junio de 2012 04:56, Pau Dominguez <pdomingu...@gmail.com> escribió: > > > > > > > > > Efectivamente, la sql puede ser la que tu quieras sobre las tablas que > > necesites, no tiene que porque estar relacionada con el modelo que llama a > > query. > > El único problema que tendrás es que el paginator no puedes aplicarlo al > > array que te devuelve y si es muy largo no quedará bien en la vista. > > La solución es crear un paginator personalizado o lo más sencillo es crear > > una vista de sql con la consulta que quieras paginar y crear un modelo > > sobre esa vista, entonces ya puedes paginar con el paginator sin problemas. > > > On 06/06/2012 11:41, Ogalav wrote: > > >> vale vale.., no lo habia captado es el modelo que esta en ejecución, > >> más sin embargo en el query hago la consulta hacia las tablas que > >> necesite. > >> ya me dio el array en el debug(). > > >> muchas gracias Pau. > > >> saludos > > >> On 6 jun, 11:16, Ogalav<omar...@gmail.com> wrote: > > >>> hola Pau, pues realice lo indicado y el interprete me arroja lo > >>> siguiente > >>> Call to a member function query() on a non-object > > >>> el codigo > > >>> public function report() { > > >>> $report = $this->Tiporeport->find('list'**); > >>> $this->set(compact('report')); > > >>> $lista_detail = $this->TiporeportDetail->**query("select > >>> * from > >>> tiporeport_details"); > >>> $this->set ('lista_detail', $lista_detail); > > >>> } > > >>> en el modelo esta: > > >>> class TiporeportDetail extends AppModel { > >>> /** > >>> * Display field > >>> * > >>> * @var string > >>> */ > >>> public $displayField = 'descripcion'; > > >>> } > > >>> probe con colocar el mismo modelo del controller en cuestion donde se > >>> ejecuta este funcion y reconoce el query, pero le cambio al modelo > >>> TiporeportDetail .. no lo acepta > > >>> On 6 jun, 10:37, Pau > >>> Dominguez<pdomingu...@gmail.**com<pdomingu...@gmail.com>> > >>> wrote: > > >>> En cualquier controller > >>>> $lista = $this->Modelo->query(Sql); > >>>> $this->set('Lista',$lista); > >>>> En la vista accedes a $Lista y lo recorres con un foreach, para ver c mo > >>>> est organizado el array que devuelve el query haz un printr($lista); > >>>> as veras los nombres de las tablas y los ndices que debes utilizar > >>>> para acceder a cada campo devuelto por query. > >>>> Saludos. > >>>> Pau. > >>>> On 05/06/2012 20:43, Ogalav wrote: > > >>>>> hola a todos. > >>>>> mi consulta es la siguiente > >>>>> tengo dos tablas que quiero vaciar en una vista, > >>>>> listado de intervalos de consulta de reporte (tabla1) > >>>>> listado de tipo de reporte (tabla2) > >>>>> la pregunta es sabiendo que no utiliza CRUD para estas tablas.. es > >>>>> necesario crear los controller y modelos y vistas de estas tablas ?? > >>>>> si desde mi vista report/index > >>>>> quiero vaciar estas tablas que usaria? > >>>>> he visto que puedo usar query() en 1.3 pero trabajo con la 2.0.. > >>>>> este query() lo utilizo en donde? > >>>>> que me recomendan.. > >>>>> gracias > >>>>> Omar Galaviz > > > -- > > Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de > > Grupos de Google. > > Para publicar una entrada en este grupo, envía un correo electrónico a > > cakephp-es@googlegroups.com. > > Para anular tu suscripción a este grupo, envía un correo electrónico a > > cakephp-es+unsubscribe@**googlegroups.com<cakephp-es%2Bunsubscribe@googlegr > > oups.com> > > Para tener acceso a más opciones, visita el grupo en > >http://groups.google.com/**group/cakephp-es?hl=es<http://groups.google.com/group/cakephp-es?hl=es> > > . -- Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos de Google. Para publicar una entrada en este grupo, envía un correo electrónico a cakephp-es@googlegroups.com. Para anular tu suscripción a este grupo, envía un correo electrónico a cakephp-es+unsubscr...@googlegroups.com Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/cakephp-es?hl=es.