2016-03-28 11 views
0

のカートを見つけることができませんでした。今日この周りを遊んでいて、このエラーが発生しました。私は方法を見つけようとしています。私はそれを持っているようにしようとしているので、ユーザが自分のアカウントにサインインするとカートが作成されます。エラーは、具体的には、誰もがこの問題を解決する方法のアイデアを持っている場合は聞かせてくださいActiveRecord :: RecordNotFound "ID ="

@cart = Cart.create(:cart => Cart.find(params[:id])) 

ラインから来ているcreateアクション

セッションコントローラ

class SessionsController < ApplicationController 


    def create 
    .... 

    if @user && @user.authenticate(params[:user][:password]) 
     session[:user_id] = @user.id 
     @cart = Cart.create(:cart => Cart.find(params[:id])) 
     @user.cart = @cart.id 
     @user.save 
      redirect_to @user 

で私のセッションコントローラから来ています私は知っている。レコードが見つからない場合は例外がスローされません

@cart = Cart.find_by_id(params[:id]) || @cart = Cart.create(:cart => params[:id]) 

find_by_id:

答えて

0

は、私はあなたのようなものとしたほうが良いと思います。

0

カートを作成する前にカートを見つけることができません。そして、あなたがカートのIDを持っているならば、実際にそれを作成する必要はなく、ただ見つけてその値にユーザのカートIDを設定するだけです。

関連する問題