2016-12-02 8 views
0
 def apply 
     @role.toggle!(:filled) 
     if @idea.save 
     redirect_to ideas_path, notice: 'Role was successfully updated.' 
     else 
     flash[:alert]= 'please login first' 
     redirect_to login_path 
     end 
    end 

私はフィールドが "塗りつぶされた"トグルしようとしていますが、 "未定義メソッド`トグル! nilのために:NilClass "。助けてください?rails "Toggle!"その仕事をしていないと働いていませんか?

答えて

0

あなたの@roleオブジェクトはアクティブレコードオブジェクトでなければならず、そのエラーは明らかにそれがnilであると言います。

+0

私はそれをインスタンス化する必要がありますか、メソッド自体がモデル内になければならないということを意味しますか?私はあなたが正しくコメントを理解していませんでした。 – Muhsin

+0

オブジェクト@@ role'に対して@toggle!メソッドを呼び出していますか?このメソッドは '@ role'がnilでなく、activerecordオブジェクトである場合にのみ利用可能です。 '@ role'がなぜnilであるのか確認できますか?オブジェクトがnilの場合はチェックを入れないでください。 – archana

+0

ああ、私はあなたを得ます。私はそれをやろうとします。本当にありがとう! – Muhsin

関連する問題