Джош - вы упомянули, что хотите знать, как перенаправить пользователя обратно, чтобы создать, если он ошибся. Если вы используете более ранние версии Rails, просто убедитесь, что вы используете помощник form_for, а не start_form_tag из ранних версий. Код вашего контроллера будет выглядеть примерно так, как вы могли бы привыкнуть ... например (модель Customer):
def create
@customer = Customer.new(params[:customer])
if @customer.save
flash[:notice] = 'Customer was successfully created.'
redirect_to(@customer)
else
render :action => "new"
end
end
Теперь вы заметите redirect_to(@customer)
, который пересылает запись, созданную в транзакции. Но при неудаче это тот же самый старый рендер: action.