2015-10-29 90 views
1

我有一個簡單的單元例子,我想與Devise和Rails集成。但是,所有示例和問題似乎都針對單元格3.以下內容在我的應用程序中失敗(添加行號)。Rails單元4:訪問設計幫助

line 1: class UserCell < Cell::ViewModel 
line 2: include Devise::Controllers::Helpers 
line 3: 
line 4: def index 
line 5:  render 
line 6: end 
line 7: end 

引發此錯誤線2

undefined method `helper_method' for UserCell:Class 

回答

2

原來,細胞不再配置默認使用Rails到相同的方式工作(通過細胞:: Rails)的。我不得不添加抽象控制器助手,但是這使我自動在我的單元格中獲得了所有設計助手。

class UserCell < Cell::ViewModel 
    include AbstractController::Helpers 
    include Devise::Controllers::Helpers 

    def index 
    render 
    end 
end 
1

另一種方式來做到這一點是

def_delegator :current_user, :controller 

您可以委派一切控制器

另一種方式,特別是如果你想保持你的電池和控制器相互獨立,你可以在options {}散列中傳遞對象和屬性到你的單元格。