Quiero hacer una pregunta, tengo una pagina en mi /view la cual se llama
inicio.rhtml, el cual tiene algunos efectos de AJAX, el cuerpo de la
pagina es el siguiente.
@profesore = Profesore.find(:first,
:conditions => "cedula = '#{cedula}' AND primer_nombre = '#
{nombre}'")
if @profesore == nil
mensaje="<font color='red'>Usuario Inexistente</font>"
render_text mensaje
else
redirect_to(:controller =>"gaia",:action =>"dato")
end
end
Lo que pasa es lo siguiente que la otra página la cual se llama
dato.rhtml se sobrepone en la página, principal cuando quiero es que la
página inicio.rhtml se cierre y aparezca la otra pagina dato.rhtml sin
sobreponerse.
redirect_to(:controller =>"gaia",:action =>"dato")
end
end
Lo que pasa es lo siguiente que la otra página la cual se llama
dato.rhtml se sobrepone en la página, principal cuando quiero es
que la
página inicio.rhtml se cierre y aparezca la otra pagina dato.rhtml sin
sobreponerse.
Estas enviando una redireccion por HTTP a la peticion Ajax misma (que
como sabes es una peticion HTTP normal gestionada por el navegador
por lo bajini). Para conseguir la redireccion de la pagina como tal
usa JavaScript en la respuesta:
render :update do |page|
page.redirect_to :controller => “gaia”, :action => “dato”
end
Estas enviando una redireccion por HTTP a la peticion Ajax misma (que
como sabes es una peticion HTTP normal gestionada por el navegador
por lo bajini). Para conseguir la redireccion de la pagina como tal
usa JavaScript en la respuesta:
render :update do |page|
page.redirect_to :controller => “gaia”, :action => “dato”
end
PD: te aviso cuando me funcione lo del text_field_with_auto_complete,
estoy trabajando en eso.
Gracias, JPMG
el erro que digo es el siguiente:
Try {window.location.href = “/gaia/prueba1â€;}catch (e) {alert(‘RJS
error:\n\n’ +
e.toString());alert(‘window.location.href=\â€/gaia/prueba1\â€;’);throw e}
el erro que digo es el siguiente:
Try {window.location.href = “/gaia/prueba1”;}catch (e) {alert(‘RJS
error:\n\n’ +
e.toString());alert(‘window.location.href=\”/gaia/prueba1
\”;’);throw e}
Lo ves aparecer por un momento porque usas :update en la vista. No
uses :update, envia simplemente el form y responde con RJS segun el
caso:
render :update do |page|
if @profesore.nil?
page.replace_html :dato, “Usuario
Inexistente”
else
page.redirect_to :controller => “gaia”, :action => “dato”
end
– fxn
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.