2011-01-27 18 views
0

私は私のアプリのために定義された次のルートを持っている:検証に失敗した場合のRailsルーティング?

match '/signup', :to => 'users#new' 
    resources :users 

は、私は、正常に動作が、私は/サインアップに行けば(検証エラーがで蹴るように)、意図的にフォームに記入していないどちらもフォーム(とエラー)が表示されましたが、URLは/ usersになりました。私は "、:except => [:new]"をmy:usersリソースに追加しようとしましたが、それは役に立たなかった。

マイユーザーコントローラは次のとおりです。

def new 
    @user = User.new 
    @title = 'Sign Up' 
    end 

    def create 
    @user = User.new(params[:user]) 
    if @user.save 
     sign_in @user 
     flash[:success] = 'Welcome to To Horse!' 
     redirect_to @user 
    else 
     @title = 'Sign Up' 
     @user.password = nil 
     @user.password_confirmation = nil 
     render 'new' 
    end 
    end 

私は本当に基本的な何かが欠けていると確信しているが、何を考えることはできません。ありがとう!

答えて

0

私は自分自身がかなり新しくなっているので、間違っている可能性があります...しかし、私は "新しい"をレンダリングするのではなく、おそらくあなたがしたい警告/フラッシュを使って新しいURLにリダイレクトするべきだと思いますつかいます。

+0

これは、URLを正しく取得するまでは機能しますが、検証エラーを含めてそれが持つパラメータをすべてリダイレクトするので、フォームはこれ以上フィードバックを返しません。 – user592884

関連する問題