Basicamente es html, excepto la parte encerrada entre <% y %> que es codigo Ruby embebido.
Iniciamos el servidor WEBrick:
- rapper@ortiga:~/RoR/ajax$ script/server
y apuntamos nuestro navegador a http://localhost:3000/ajax/muestra
Damos click a “hora” y nos muestra otra cosa menos la hora actual. Editamos el metodo “tiempo” en el archivo app/controllers/ajax_controller.rb.
Despues de esto debe mostrarnos lo que queremos.
Ajax nos permite actualizar un fragmento de una pagina web y en Rails existen librerias que hacen casi todo el trabajo por nosotros. Para agregar Ajax a nuestra aplicacion necesitamos cuatro cosas:
- Configurar Rails para usar Javascript.
- Cambiar la liga “hora” para enviar una peticion Ajax mediante Javascript.
- Especificar cual sera el fragmento HTML por actualizar.
- Preparar un lugar para el contenido HTML actualizado.
- Construir un metodo controlador y posiblemente una vista para mostrar lo que nos devuelva Ajax.
Ahora apuntamos nuestro navegador a la direccion http://localhost:3000/ajax/muestra y vemos algo como esto:
Hasta aquí Ajax no actua como desearíamos ya que para ver la hora es necesario la intervención del usuario. Para remediar esto Ajax cuenta con un método que nos ayudara a resolver el problema. El metodo periodically_call_remote, como su nombre lo dice, se trata de hacer llamadas remotas periodicamente. Editamos el código del archivo muestra.rhtml, y queda así:
Refrescamos el navegador que apunta a http://localhost:3000/ajax/muestra y vemos el reloj funcionando.
Basado en un artículo de Bruce Tate. Vale la pena revisarlo ya que explica a detalle todo el proceso.
No hay comentarios:
Publicar un comentario