У меня есть простой метод в ApplicationController, который при вызове может установить 'flash [: note]', а затем перенаправить на root_url.
Проблема в том, что хотя этот метод вызывается только один раз, корневой URL отображает эту вспышку [: note] TWICE.
Вот метод (это before_filter, используемый в других контроллерах и определенный в ApplicationController):
def authenticate
if params[:id].try(:size) == 40
company = Company.find_by_hash_identifier(params[:id])
if company
session[:editable_companies] ||= []
session[:editable_companies] << company.id
session[:editable_companies].compact!.uniq!
end
end
unless session[:editable_companies].try('&', [company.try(:id), params[:id]])
flash[:notice]= "You are not permitted to edit this company.<br />Please check the URL from the email we sent you, and try again."
flash.keep[:notice]
redirect_to root_url and return
end
end
В представлении root_url я получаю две вспышки примерно так:
Вам не разрешено редактировать эту компанию. Вам не разрешено редактировать эту компанию.