Rieles: redirect_to con: error, pero parpadea [: error] vacío


117

Estoy intentando realizar una redirección mientras configuro el valor de flash [: error]. (Rieles 3.0.10)

En mi opinión tengo

<p id="error"><%= flash[:error] %></p>
<p id="notice"><%= flash[:notice] %></p>

Si lo hago redirect_to show_path, :notice => "ok", funciona bien, pero si lo hago redirect_to show_path, :error => "error", no aparece.

¿Qué podría estar perdiendo?

Respuestas:


237

Como se indica en la API de Rails únicamente: aviso y: alerta se aplican de forma predeterminada como un valor hash flash. Si necesita establecer el valor: error, puede hacerlo así:

redirect_to show_path, flash: { error: "Insufficient rights!" }

3
Para mayor claridad: redirect_to(show_path, {:flash => { :error => "Insufficient rights!" }}). Este formato es necesario si desea crear show_path con opciones de URL.
Spyle

1
Eso también funcionó para mí, solo me pregunto cuál fue el pensamiento detrás del aviso / alerta que está en el hash de flash
jbnunn

2
Trabajó en Rails 5
Richard Peck

1
Puede alejarse del formato ruby ​​1.9 a:redirect_to(show_path, flash: { error: "Insufficient rights!" })
mmsilviu

17

Si tiene problemas para mantener el flash después de redirigir a otra ruta, utilice esto.

flash.keep

en su método, antes de redirigir.


Acabo de ver lo siguiente que se muestra en la página dirigida:#<ActionDispatch::Flash::FlashHash:0x007f88c6e0c3c8> #<ActionDispatch::Flash::FlashHash:0x007f88c6e0c3c8>
Hengjie

¡Parece que no es la respuesta a la pregunta, sino la solución de mi problema!
Claudio Shigueo Watanabe

0

Para seguir verdaderamente el patrón PRG, me pregunto si este proyecto funciona bien

https://github.com/tommeier/rails-prg

No soporto que las aplicaciones no sigan a PRG como usuario ... He estado 6 páginas después de un POST y presioné el botón Atrás para volver a las 10 páginas atrás. Me bloquearon "¿Quieres volver a publicar esta basura?". ...no claro que no. Solo quiero volver a una página que había visto antes.

Las aplicaciones que no son de PRG son muy, muy molestas para los usuarios.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.