次のようなものがあるとします。
def new
@user = User.new
end
def create
@user = User.create(params[:user])
if @user.save
flash[:notice] = 'User created'
redirect_to :action => 'list'
else
flash[:error] = 'Some error here!'
render 'new'
end
end
コードはわかりやすいと思います。
ここでの問題は、@userオブジェクトが正常に保存されない場合、(上記のように) レンダリングするか new、リダイレクトする必要があるかということです。new
ユーザーによるデータ入力へのリダイレクトnewが失われるかどうかはわかっていますが、レンダリングするnewと、URL は/users/create代わりになります/users/new(これは見苦しいです!)。