質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

1回答

1126閲覧

Railsでメソッドが書いてあるのにNoMethodErrorが出る

lyzmfeqpxs54

総合スコア237

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

1クリップ

投稿2017/11/21 05:28

いつもお世話になります。

https://qiita.com/Tommy1218/items/12c3392dff6da1c87fdf
上記のサイトを参考にRailsでログイン機能を実装しようとしているのですが、
NoMethodError (undefined method `encrypt' for User (call 'User.connection' to establish a connection):Class):

エラーが出てしまいます。
以下のようにapplication_controller.rb内にencryptメソッドは記述してあるのですが、NoMethodErrorになってしまう原因が解明できない状態です。

ご教示のほどお願いいたします。

Ruby

1# user.rb 2 3 def self.new_remember_token 4 SecureRandom.urlsafe_base64 5 end 6 7 def encrypt(token) 8 Digest::SHA256.hexdigest(token.to_s) 9 end 10 11 12# application_controller.rb 13 14 def current_user 15### ↓の行でエラー 16 remember_token = User.encrypt(cookies[:user_remember_token]) 17 @current_user ||= User.find_by(remember_token: remember_token) 18 end 19 20 21 22エラー内容 23NoMethodError (undefined method `encrypt' for User (call 'User.connection' to establish a connection):Class):

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

def encryptとすると、それはインスタンスメソッドUserのインスタンスに対して呼ぶメソッド)となってしまいます。

User.encryptで呼びたい場合は、def self.encryptのようにしましょう。

(もっとも、このメソッドの処理がUserの値と直接関係ないので、別なモジュールに入れてもいいかもしれません)

投稿2017/11/21 05:42

maisumakun

総合スコア145183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問