0

我用我的rails應用程序聲明授權,我有以下控制器:聲明驗證阻止實例變量

class OrganizationsController < ApplicationController 
    filter_resource_access attribute_check: true 

    def index 
    @organizations = Organization.all 

    respond_to do |format| 
     format.html # index.html.erb 
     format.json { render json: @organizations } 
    end 
    end 
end 

然而,當我嘗試訪問視圖的行動,我得到的錯誤 undefined method 'each' for nil:NilClass我試圖訪問@organizations實例變量。它適用於我註釋掉filter_resource_access行。

有什麼想法?

回答

0

錯誤是因爲你的實例變量爲零,這就是爲什麼它說每個nil:NilClass都有未定義的方法。過濾器是一種在控制器之前或之後運行的方法,在這種情況下,我不確定該方法意味着什麼,但是在控制器是我的猜測之前,它不會讓您訪問數據。

0

顯然我忘了在我的Gemfile中包含declarative_authorization gem。 :恥辱:

所有現在工作。