Ключевым моментом здесь является то, что вы пытаетесь получить доступ к вспышке внутри частичного.Вам нужно сделать следующее в вашем методе рендеринга, чтобы передать флеш-хэш в частичное:
render YOUR_PARTIAL, :flash => flash
http://guides.rubyonrails.org/layouts_and_rendering.html#passing-local-variables
РЕДАКТИРОВАТЬ:
Более простое решение: переименуйте вашу частичку во что угодно, кроме _flash.
Поскольку ваша частичная часть была названа flash, это случилось:локальная переменная с тем же именем, что и частичное (минус подчеркивание).Вы можете передать объект в эту локальную переменную с помощью опции: object:
Перезаписываемый объект был перезаписан локальной переменной, созданной с именем партиала.
Комупоясним это немного, скажем, у вас есть модель комментариев, и вы визуализируете комментарии в частичном, вы можете сделать что-то вроде:
#_comment.html.erb
<h1>comment.user.name</h1>
<p>comment.body</p>
Вы бы назвали этот частичный, выполнив что-то вроде:
render @customer
Теперь замените слово customer на flash, и вы поймете, почему это было проблемой.
Эта функциональность, которая обычно обычно , является причиной этой проблемы.