и ваши части, и файл макета (application.html.erb) являются частью представления. поэтому, если вы предлагаете выводить флеш-сообщения в обоих местах, вы увидите это дважды, так как они оба отображаются.
Автор добавленной вами ссылки также проверил логическую переменную экземпляра, чтобы сообщения отображались только один раз. Я не вижу, чтобы вы делали это в опубликованном вами коде, который может объяснить, почему вы не видите такие же результаты. Вы можете добавить логическую проверку (что было сделано с @messages_rendered) или вы можете поместить флэш-сообщения только в одном месте (файл макета или частичное представление). Я не уверен, что именно вы хотите, чтобы он выглядел в итоге, так что вам, возможно, нужно просто поиграть с различными вариантами и посмотреть, что вам нравится.