2012-04-02 40 views
4

我正在使用CanCan 2.0 gem來授權,high_voltage gem用於靜態頁面。Ruby on Rails:CanCan和靜態頁面

在我的routes.rb文件我有:

match 'about' => 'high_voltage/pages#show', id: 'about' 

我希望把它公開在我ability.rb文件,但沒有這兩條線這樣做:

can :read, :pages 
can :read, 'high_voltage/pages' 

我該如何解決?

回答

2

是不是這個問題與沒有模型'頁面'的事實有關?有cancan wiki,如何處理這樣的情況:當你添加

authorize_resource :class => false 

到控制器它應該工作。

-2

如果它是傳統意義上的靜態頁面,那麼這將不起作用。靜態頁面完全繞過Rails堆棧,並直接從文件系統提供。我推薦做的事情仍然是將它們緩存爲靜態頁面,但是有一個控制器檢查權限,然後提供靜態頁面。

+0

當然,他只是意味着一個頁面,不是一個資源,但仍然在堆棧中? – 2014-03-03 00:53:06