Tengo un problemazo con el ajaxHelper, quizas es algo basico, no he
encontrado mucha informacion al respecto pero resulta que hice una
pequeña demo sobre una aplicacion ya hecha para aprender a utlilizarlo
y en el div en donde tiene que escribir me sale esto:

"NOT ACCEPTABLE

An appropriate representation of the requested resource
/cake/app/index.php/products/div_result could not be found on this
server."

El demo esta sobre un controlador y modelo ya listos, asi que lo que
hice fue agregar una funcion en el controlador, un nuevo div en una de
las vistas del controlador y por ultimo la nueva vista.

Entonces:

products_controller.php:

function div_result
{
   $this->render('div_result', 'ajax');
}

view.thtml:
<div id="prueba">
echo $ajax->link('TEST', '/products/div_result', array('url' => '/
products/div_result', 'update'=>'div_result'));
</div>

<div id="div_result">
</div>


div_result.thtml:
<?php print 'Hola Mundo Ajax'?>

eso es todo y segun lo que he leido, es lo mas basico que puede
existir, y lo que se espera es que en el div_result de la vista
view.thtml cuando haga click en el vinculo del div_test aparezca el
texto "Hola Mun..." sin cargar la pagina completa.

¿Alguna nocion de que puede estar mal?

muchas gracias de antemano

On 17 nov, 19:28, "Paolo Stancato" <[EMAIL PROTECTED]> wrote:
> Ya conseguí solucionar mi problema. Con respecto a DRY, con
> renderElement va de perlas, y con respecto al link deajax, a mi me ha
> funcionado de esta manera:
>
> $ajax->link('texto del link', 'ruta', array('update'=>'div_a_actualizar'));
>
> Saludos!
>
> El 17/11/07, Paolo Stancato <[EMAIL PROTECTED]> escribió:
>
> > Hola Fran,
>
> >    aquí hablás sobre una "vista maestra" y después de varias acciones
> > que deberían actualizar el contenido de los divs (dentro de la vista
> > maestra). Mi pregunta es, suponiendo que el contenido (por defecto)
> > que tendrá la vista maestra es el mismo que el que generará mi acción,
> > cómo puedo hacer para no repetir código?
>
> > Saludos!!
>
> > El 15/11/07, Fran Iglesias <[EMAIL PROTECTED]> escribió:
>
> > > El 15/11/2007, a las 17:36, AldeaCMS escribió:
>
> > > > alguien podria darme una manito?
>
> > > A grandes rasgos.
>
> > > En principio, hay una vista (yo la llamo "maestra") que contiene
> > > alguna DIV que se va a actualizar mediante llamadasAjax.
>
> > > Para crear esa DIV usa el AjaxHelper->div($id_para_la_div) y cierra
> > > con AjaxHelper->divEnd($id_para_la_div)
>
> > > En medio pon el contenido inicial, si es que tiene alguno.
>
> > > Eso nos prepara las cosas.
>
> > > Ahora, supongamos que la DIV se actualiza cuando hacemos clic en
> > > algún enlace que llama medianteAjaxa un controller/action.
>
> > > El link lo creas con el AjaxHelper->link($texto_del_enlace,
> > > $url_del_enlace, $ajaxOptions) y lo pones donde "le toque".
>
> > > La clave son las $ajaxOptions, que es un array en el que indicas, al
> > > menos:
>
> > > array(
> > > 'url' => $url_de_la_accion_que_actualiza_la_div,
> > > 'update' => $id_para_la_div
> > > )
>
> > > 'update' es para queAjaxsepa dónde tiene que meter el contenido. Se
> > > pueden poner unas cuantas opciones más, pero por ahora es suficiente.
>
> > > Todo esto en esa "vista maestra".
>
> > > Ahora tenemos que preocuparnos de la acción que genera el contenido
> > > para esa DIV y de lo que devuelve.
>
> > > En el controller pon el component RequestHandler.
>
> > > La vista correspondiente se generará sin Layout al ser llamada
> > > mediantesAjax, por lo que sólo nos devolverá lo que se genere en
> > > el .ctp. No tienes que encerrar eso en un DIV ya que lo que va a ser
> > > actualizado es el contenido del DIV que ya estaba en la vista maestra
> > > y que le indicamos aAjaxque debe actualizar.
>
> > > En principio, con eso, al hacer clic en el enlace, se llamará por
> > >Ajaxa la acción que sea y se actualizará.
> > > --
> > > Fran Iglesias
> > > [EMAIL PROTECTED]
--~--~---------~--~----~------------~-------~--~----~
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 CakePHP-es@googlegroups.com
 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.

-~----------~----~----~----~------~----~------~--~---

Responder a