I have the following:
My create action looks like:
@user = User.new
@user = User.new(params)
But when the form submission submits and fails, the browser url is on /account/oncreate
Why is that? I want it to continue to display /account/create
That is better as
render action: 'create'
render :action => 'create'
but I would have expected an error if it did not work. Are you sure
the validation is failing? Put some debug code after the if line, if
you use puts then it will be printed to the server terminal window.
Also it is normally better to use the standard actions new and create
rather than create and oncreate. If you have not already done so then
work right through a good tutorial such as railstutorial.org (which is
free to use online) which will show you the basics of rails.
If you’re only rendering a different view (as in the
else branch above), the URL is not going to change to reflect that.