1

簡単な質問があります。Railsの routes.rb 内の変数スコープは何ですか。より具体的に言うと、この特定のファイルでApplicationControllerの変数を参照できますか? ビューのように?

このラムダを機能させることができないため、私は尋ねています:

root to: "users#edit", constraints: lambda { |req| !@current_user.nil? }, as: :authenticated_root

@current_user は application_controller.rb に含まれるモジュールで宣言されていますが、routes.rbには表示されません。

おそらく、マニュアルの重要なページを見落としています...

4

1 に答える 1

2

いいえ、ルート制約はコントローラー内で設定された変数にアクセスできません。

before_action(>= Rails 4) またはbefore_filter(<= Rails 3.2)のコントローラーにロジックを移動する必要があります。

于 2013-09-17T20:36:35.580 に答える