Rails: redirect_to with: error, nhưng flash [: error] trống


117

Tôi đang cố thực hiện chuyển hướng trong khi đặt giá trị flash [: error]. (Đường ray 3.0.10)

Theo quan điểm của tôi, tôi có

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

Nếu tôi làm redirect_to show_path, :notice => "ok"thì nó hoạt động tốt, nhưng nếu tôi làm redirect_to show_path, :error => "error"thì nó không xuất hiện.

tôi có thể thiếu gì

Câu trả lời:


237

Như đã nêu trong API Rails chỉ: thông báo và: cảnh báo theo mặc định được áp dụng dưới dạng giá trị băm flash. Nếu bạn cần đặt giá trị lỗi: bạn có thể làm như thế này:

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

3
Để rõ ràng : redirect_to(show_path, {:flash => { :error => "Insufficient rights!" }}). Định dạng này là cần thiết nếu bạn muốn tạo show_path với các tùy chọn url.
spyle

1
Điều đó cũng có hiệu quả với tôi, tôi chỉ tự hỏi ý nghĩ đằng sau thông báo / cảnh báo là gì trong flash hash
jbnunn

2
Làm việc trong Rails 5
Richard Peck

1
Bạn có thể chuyển từ định dạng ruby ​​1.9 sang:redirect_to(show_path, flash: { error: "Insufficient rights!" })
mmsilviu

17

Nếu bạn gặp vấn đề với việc giữ đèn flash sau khi chuyển hướng sang đường dẫn khác, thì hãy sử dụng cách này.

flash.keep

trong phương pháp của bạn, trước khi chuyển hướng.


Tôi chỉ nhận được những điều sau đây được hiển thị trong trang được hướng dẫn:#<ActionDispatch::Flash::FlashHash:0x007f88c6e0c3c8> #<ActionDispatch::Flash::FlashHash:0x007f88c6e0c3c8>
Hengjie

Có vẻ như đó không phải là câu trả lời của câu hỏi nhưng nó là giải pháp cho vấn đề của tôi!
Claudio Shigueo Watanabe

0

Để thực sự theo mô hình PRG, tôi tự hỏi liệu dự án này có hoạt động tốt không

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

Tôi không thể chịu được các ứng dụng không theo PRG với tư cách là người dùng ..... Tôi đã có 6 trang sau khi POST và nhấn nút quay lại để quay lại 10 trang trước bị chặn bởi "bạn có muốn đăng lại tin tào lao này không". ...Tất nhiên là không rồi. Tôi chỉ muốn quay lại một trang mà tôi đã thấy trước đây.

các ứng dụng không phải PRG rất gây khó chịu cho người dùng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.