Во-первых, не добавляйте бессмысленные сообщения в проверки, сообщения об ошибках по умолчанию хороши.
Во-вторых, измените ваш код на контроллер примерно так:
def new
@pool = Pool.new
end
def create
@pool = Pool.new(params[:pool])
if @pool.save
flash[:notice] = "Some text indicating it was created"
redirect_to pool_path(@pool)
else
flash[:error] = "Something is wrong while validating"
render :new
end
end
и просмотр используйте помощник по формам :
<% form_for @pool do |f| %>
<%= f.error_messages %>
<%= f.label :question, "Enter your question:" %><br>
<%= f.text_field :question %><br>
<%= submit_tag "Send" $>
<% end %>
Таким образом, вы получаете проверку в режиме, а в контроллере вам нужно только проверить, можно ли сохранить модель. Это не так, то в вашей форме просмотра может отображаться error_messages для этой модели .
Для отображения флеш-сообщений в месте размещения:
<% if flash[:notice] -%>
<p class="notice"><%= flash[:notice] %></p>
<% end -%>
<% if flash[:error] -%>
<p class="error"><%= flash[:error] %></p>
<% end -%>