In my account controller I\'d like to display (render, redirect_to ?) the edit view after changes get saved and display flash notice.
def update
@account =
You can still use notices like in Rails 2:
flash[:notice] = "message"
Just add the following line to the top of your view to display it:
<p id="notice"><%= flash[:notice] %></p>
And you should use render
method if you don't want to make your users to fill edit forms once again.
By default you have to use a separate statement, e.g.
format.html {
flash[:notice] = 'message'
render :edit
}
This ticket has a patch to let you use render 'edit', :notice => 'message'
. It didn't get into Rails but there is a gem, flash_render, that adds it.
If you just use flash[:notice]
that value will still be available in the next request. Meaning, you'll see the text on the next 2 pages. Instead use flash.now
to only make the value available in the current request.
format.html {
flash.now[:notice] = 'message'
render :edit
}
For reference read Action Controller Overview 5.2.1