質問

Deviseのサインインページにレイアウトを設定したかったので、ApplicationControllerに次のように追加しました。

class ApplicationController < ActionController::Base
  protect_from_forgery

  if devise_controller?
    layout "single_column_with_banner"
  end
 end

ただし、次のエラーが発生します。未定義の方法「devise_controller?」 ApplicationController用:クラス

ヘルパーメソッドはdevise.rbで指定されていることがわかりますが、アプリケーションコントローラーからアクセスできません。 Rails 3.2を使用しています(2.3からの移行の過程で)。私が見るべき場所はありますか?最後の手段として、私はセッションコントローラーをオーバーライドできますが、私はまだそれをしたくありません。

役に立ちましたか?

解決

どちらかのdevice_controllerなしでレイアウトを指定できるようですか?またはオーバーライドSessionsController。レイアウトを指定するために、 Application.RB:

config.to_prepare do
  Devise::SessionsController.layout "single_column_with_banner"
end
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top