2012-02-14 3 views
0

私のルビーと一致していません:エラーメッセージがレールに私のすくいルート3.0.3アプリの表示次のメッセージ

No route matches {:action=>"show", :controller=>"carts"} 

を私のすくいルートで私は、次があります。

カートGET /カート/:id(.:format){:アクション=>「ショー」、:コントローラ=>「カート」}

私はあなたがフォームにページに戻ってリダイレクトされ、ネストされたフォームをやろうとしています更新属性が失敗したとき

def confirmation 
@cart=current_cart 
respond_to do |format| 
    if @cart.update_attributes(params[:cart]) 
    return 
    else 
    redirect_to :action=> "show" 
    end 
end 

エンド

アプリはショーカートにアドレスを要求し、その後アドレスで確認ページを表示します。両方のページはカートに属します。 ネストされたフォームは私のアドレス要素から来ます。もし私がアドレスのバリデーション条件を見直すなら、それはうまく動作します。不足しているフォーム情報や他のバリデート属性を処理したい。

私は間違っていますか?

答えて

1

リダイレクトを行うときには、ショーのパラメータ(基本的にはID)も送信する必要があります。

(クリーナーすぎに見える)の代わりにこれを試してみてください:

redirect_to cart_path(@cart) 
+0

Thxをし、今では、検証で新しいエラーを作成しました:/ – Syl

関連する問題