我正在開發一個名為 web 門戶的廣告牌管理專案。我的 routes.rb 看起來像:
Rails.application.routes.draw do
get "/", to: "main#index"
get "/login", to: "login#loginpage"
post "/login", to: "login#create"
get "/register", to: "register#signup"
post "/register",to: "register#create"
get "/owner", to: "owner#ownerdashboard"
get "/client", to: "client#clientdashboard"
delete "/logout" , to: "login#destroy"
get "/addbillboard", to: "addbillboard#add"
post "/addbillboard", to: "addbillboard#addboard"
get "/showboards", to: "showboards#showboards"
end
目前我只有兩個模型所有者(用于用戶詳細資訊)和板(用于廣告牌詳細資訊)。我有很多使用這兩種型號的控制器。現在我想將cancan與我的網路應用程式集成:特定用戶可以訪問特定頁面。我的主要問題是阻止客人訪問所有者頁面。就像只有注冊所有者才能添加廣告牌。我怎樣才能確保這一點?期待您的回答。
uj5u.com熱心網友回復:
也許您應該先閱讀,我認為這可以理解
https://github.com/CanCanCommunity/cancancan
https://github.com/CanCanCommunity/cancancan/blob/develop/docs/README.md
有Ability你需要定義的類
也許是這樣的
class Ability
include CanCan::Ability
def initialize(user)
can :create, Billboard if owner?(user)
end
private def owner?(user)
user.is_owner?
end
end
實施基于您的背景關系
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/434164.html
上一篇:如何在SpringBoot應用程式中包含其他模塊的資源
下一篇:用于銀行交易決議的正則運算式
