Рельсы мигают с предупреждением, предупреждением и ошибкой не отображаются; показывается только уведомление - PullRequest
4 голосов
/ 20 декабря 2011

На мой взгляд, у меня есть:

<% flash.now[:error] = "ERROR FLASH" %>
<% flash.now[:notice] = "NOTICE FLASH" %>
<% flash.now[:warning] = "WARNING FLASH" %>

Когда страница обрабатывается, появляется только синее информационное окно с NOTICE FLASH. Два других не будут показаны. То же самое происходит со знаками равенства:

<%= flash.now[:error] = "ERROR FLASH" %>
<%= flash.now[:notice] = "NOTICE FLASH" %>
<%= flash.now[:warning] = "WARNING FLASH" %>

Есть ли в моем приложении rails параметр, при котором предупреждения или ошибки не отображаются?

Ответы [ 2 ]

8 голосов
/ 29 января 2012

У меня была такая же проблема со следующим кодом:

redirect_to(docs_path, :warning => "I am here!!!") and return if @doc.nil?

с использованием «: уведомление» и «: предупреждение» вместо «: предупреждение» работает, как и ожидалось. Кажется, что вы можете установить: alert и: alert непосредственно в методе перенаправления, но не: error и: warning.

Тестирование на flash [: предупреждение] .nil? в следующем действии выдает истину, но flash [: note] .nil? является ложным (т. е. вспышка: предупреждение не установлено, но установлено: уведомление).

Чтобы обойти это, я установил значение flash [: warning] перед перенаправлением так:

if @doc.nil?
  flash[:warning] =  "I am here!!!"
  redirect_to(docs_path) and return 
end

Это не так элегантно, но работает!

4 голосов
/ 20 декабря 2011

Rails не делает ничего магического с содержимым флеш-памяти, кроме как очищает его, когда это необходимо.

Это полностью зависит от вас, чтобы предпринять соответствующие действия с содержимым флеш-памяти, т. Е. Если вы хотите отобразить сообщение об ошибке, уведомление и предупреждение, вы должны поставить

<%= flash[:error] %>

Где-то в ваших представлениях шаблонов или макетов, где пользователь сможет его увидеть (и повторите для: предупреждение,: уведомление и любая другая флэш-клавиша, которую вы хотите отобразить таким образом)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...