Parece que lo unico que le falta en tu consulta es poner el nombre del
modelo cuando haces el query ($this->[Modelo]->query())

Pero por otro lado podes setear directamente usando el ORM

Te paso un ejemplo (Modelo: Factura)
Variables enviadas por post, pero tranquilamente podes cambiar y hacer por
get como necesitas vos, poniendo los parametros en la funcion y cambiando
donde dice $this->data ($this->data es como recibe el arreglo post cakephp)

function agregar() {
        if (!empty($this->data)) {
                    $this->Factura->create();
                    $this->Factura->set(array(
                        'factura_tipo_id' =>
$facturatipo_id['FacturaTipo']['id'],
                        'numero_factura' =>
$this->data['Factura']['numero_factura'],
                        'cliente_id' =>
$this->data['Factura']['cliente_id'],
                        'forma_de_pago' =>
$this->data['Factura']['forma_de_pago'],
                        'numero_de_comprobante' =>
$this->data['Factura']['numero_de_comprobante'],
                        'cantidad_de_cuotas' =>
$this->data['Factura']['cantidad_de_cuotas'],
                        'total' => $this->data['Factura']['total']
                    ));
                    if ($this->Factura->save()) {
                        $this->Session->setFlash('Factura guardada');
                        $this->redirect(array('action' => 'index'));
                    } else {
                        $this->Session->setFlash('No se guardó la factura');
                    }
        }
    }

Saludos!!!

El 21 de septiembre de 2011 01:35, Hugo Ivan Duran Rincon <
[email protected]> escribió:

> buenas noches necesito realizar un insert en el modelo tengo el
> siguiente codigo pero tengo eror y no lo veo o si hay otra forma favor
> indicarme cual la idea es hacerla con $this->query
>
> var $sql = "INSERT INTO plandpuesto (PLDPPCCO, PLDPDESC, PLDPFECR,
> PLDPUSCR) VALUES (%s, %s, %s, %s) ";
>
>        function InsertPlantilla($idplantillac, $puesto, $usuario_crea){
>                Configure::write('debug', '2');
>
>                $res = false;
>                $date_crea = date("Y-m-d h:i:s");
>
>                $dataSource = $this->getDataSource();
>                $dataSource->begin($this);
>                $resul = $this->query(sprintf($sql, $idplantillac, $puesto,
> $date_crea, $usuario_crea));
>                if (!$resul){
>                        throw "Error ::: No es posible insertar los
> puestos";
>                        $dataSource->rollback($this);
>                }else{
>                        $dataSource->commit($this);
>                        $res = true;
>                }
>        }
>
> no veo el error
>
> --
> 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
> [email protected].
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> [email protected]
> Para tener acceso a más opciones, visita el grupo en
> 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 
[email protected].
Para anular tu suscripción a este grupo, envía un correo electrónico a 
[email protected]
Para tener acceso a más opciones, visita el grupo en 
http://groups.google.com/group/cakephp-es?hl=es.

Responder a