Rails рендерит путь маршрута

Я все еще новичок в Rails и с трудом понимаю, как работает система путей в Rails.

В моем route.rb я создаю псевдоним для регистрации:

match 'signup' => 'user#new'
resource :user, :controller => 'user'

Действие там и переход к / регистрация показывает правильное действие. Все идет нормально.

Теперь, когда я отправляю свою регистрационную форму, она запускает действие create с POST, как обычно. И вот где я застрял.

Если регистрация не удалась, я хотел бы снова предоставить пользователю форму регистрации. Одним из вариантов было бы сделать рендер "новым", но он переводит пользователя в / user вместо / signup.

UserController

class UserController < ApplicationController

  def new
    @user = User.new
  end


  def create

    @user = User.new(params[:user])

    if @user.save
      redirect_to root_url
    else
      render "new"
    end

  end

end

Любая помощь приветствуется!

ОБНОВЛЕНИЕ - РЕШЕНИЕ НАЙДЕНО

Добавлено 2 соответствия маршрутов для / регистрации, используя опцию: через

match 'signup' => 'user#new', :as => :signup, :via => 'get'
match 'signup' => 'user#create', :as => :signup, :via => 'post'

Таким образом, приложение знает, что при публикации в / signup оно должно запускать действие create, а когда используется http-метод get, оно использует новое действие.

Разметка контроллера такая же, как и выше.

Ответы на вопрос(1)

Ваш ответ на вопрос