[解決済み] Rails:悪名高き「current_user」はどこから来たのか?
2022-02-16 13:17:29
質問
最近、Railsについていろいろ調べているのですが、その中で
current_user
. また、Deviseを使用する場合でも、自分で手動で定義しなければならないのでしょうか?を使用するための前提条件はありますか?
current_user
(セッション、ユーザーなどの存在)ですか?
どのように解決するのですか?
Deviseなど、いくつかのgemで定義されています。
user_idをどこかに保存する必要があります。通常はログイン後のセッションに保存します。また、あなたのアプリがユーザーや認証などを持ち、必要とすることを想定しています。
一般的には、次のようなものです。
class ApplicationController < ActionController::Base
def current_user
return unless session[:user_id]
@current_user ||= User.find(session[:user_id])
end
end
これは、Userクラスが存在することを前提としており、例えば
#{Rails.root}/app/models/user.rb
.
更新:現在のユーザーが存在しない場合に、追加のデータベースクエリーを行わないようにしました。
関連
-
[解決済み] Railsサーバーがポートはすでに使用されていると言う、そのプロセスを殺すにはどうすればよいですか?
-
[解決済み] Rubyのクラスで未初期化の定数エラーが発生する
-
[解決済み] rails erb フォームヘルパー options_for_select :selected
-
[解決済み] Railsです。gemを使った特定バージョンのライブラリのアンインストール
-
[解決済み] Ruby:Rubyの配列にinclude.の反対はある?
-
[解決済み] Rubyでnilとemptyとblankを理解する方法
-
[解決済み] Ruby on Railsで現在の絶対URLを取得するにはどうすればよいですか?
-
[解決済み] Ruby/RailsでHashからキーを削除して残りのHashを取得する方法は?
-
[解決済み] Rails 3.1 を使用して、「ページ固有」の JavaScript コードをどこに置くか?
-
[解決済み】Railsの認証トークンを理解する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 新規ユーザー作成時に ActiveModel::ForbiddenAttributesError が発生する。
-
[解決済み] heroku open - no app specified
-
[解決済み] Ruby on Railsのランナー
-
[解決済み] rake db:migrateを使って1ステップだけロールバックする方法
-
[解決済み] 変更欄のRailsマイグレーション
-
[解決済み] heroku push rejected, failed to compile Ruby/rails app
-
[解決済み] erbでコメントを追加する最適な方法
-
[解決済み] Railsでpng画像を文字列形式で表示するには?
-
[解決済み] 構文エラー "構文エラー、予期しない入力終了、keyword_endを期待 (SyntaxError)"
-
[解決済み] railsでcheck_boxをcheckedにする方法は?