2012-10-07 18 views
0

當您在rails中創建站點時,它會自動創建一些頁面,允許您將濃度添加到站點。您通常通過在瀏覽器中鍵入domain.com/something/new來訪問它們。阻止用戶向rails站點添加內容

比方說,你想上傳該網站到互聯網。如何防止用戶訪問該頁面?刪除他們似乎不是一個好方法,因爲那麼你怎麼能添加濃度到網站?你的密碼保護他們嗎?有更好的方法嗎?

回答

2

您可以使用devise對用戶進行身份驗證,並在控制器中調用authenticate_user以確保只有經過身份驗證的用戶才能訪問該頁面。你也可以看看cancan,它給你更多的控制權,比如設置讀取,寫入權限。

0

有可能有一百種方法來做到這一點。這取決於你需要什麼和你想要什麼。 如果您不希望人們在您的網站上發佈內容,並且您自己也不需要這樣做,爲什麼不直接從/app/controllers/yourmodel_controller.rb/app/views/yourmodel/new.html.erb/config/routes.rb刪除路由到/yourmodel/new

此外,您可以使用一些gem進行身份驗證。有幾個。看看clearance。它可以讓你只爲註冊用戶提供一些頁面。如果你想隱藏幾頁 - 讓我們來說 - 普通用戶,以便只有管理員可以訪問它們,看看aegis