Rails Cells 4: доступ к помощникам Devise
У меня есть простой пример Cells, который я хотел бы интегрировать с Devise и Rails. Тем не менее, все примеры и вопросы, кажется, для ячеек 3. Следующая ошибка в моем приложении (добавлены номера строк).
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 ответа
Решение
Оказывается, что Cells больше не настроен на работу с Rails по умолчанию (через Cell::Rails). Мне пришлось добавить помощников абстрактных контроллеров, но это автоматически помогло мне найти всех помощников в моей камере.
class UserCell < Cell::ViewModel
include AbstractController::Helpers
include Devise::Controllers::Helpers
def index
render
end
end
Еще один способ сделать это
def_delegator :current_user, :controller
Вы можете делегировать все контроллеру
Еще один способ, особенно если вы хотите сохранить свои ячейки и контроллер независимыми друг от друга, вы можете просто передать объекты и атрибуты в вашу ячейку в хэше options{}.