簡體   English   中英

登錄和退出資源的設計布局

[英]Devise Layouts for SignedIn & Signed Out resources

我的應用程序具有兩種UI狀態:-登錄-已注銷

我一直在使用以下內容來確定要使用的應用程序/視圖/布局基於用戶是否通過Devise登錄或注銷:

  # Devise, way of using a different Layout for all the devise/non-signed in Views
  layout :layout_by_resource
  def layout_by_resource
    if devise_controller?
      "application_unauthorized"
    else
      "application"
    end
  end

問題是一旦您登錄后使用的布局錯誤? 想法?

我只想使用“ application_unauthorized”(如果設計)並且用戶未登錄。

實際上,您應該使用user_signed_in? 檢查用戶是否已登錄的方法。我注意到current_user? 即使用戶當前未登錄,也可能返回true

因此,您的代碼將如下所示:

layout :layout_by_resource
def layout_by_resource
  if user_signed_in?
    "application"
  else
    "application_unauthorized"
  end
end

我個人會檢查是否使用if current_user? 而不是devise_controller?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM