У меня проблема при попытке прочитать содержимое куки в ruby на рельсах. Я установил содержимое cookie внутри класса помощника, используя cookies.permanent.signed[:remember_token] = [user.id, user.salt]
. Я также могу читать содержимое с:
def user_from_remember_token
User.authenticate_with_salt(*remember_token)
end
def remember_token
cookies.signed[:remember_token] || [nil, nil]
end
Проблема возникает, когда я вызываю метод user_from_remember_token
не из соответствующего представления, а из другого класса. Тогда внутри remember_token
я получаю ошибку undefined method 'cookie_jar' for nil:NilClass
. Кажется, что класс cookies
не может быть найден. Я также попытался поместить весь код в контроллер безуспешно. Кроме того, я попробовал решение, опубликованное здесь .
Может ли быть ограничение, что только сами представления / помощники / контроллеры могут считывать значения файлов cookie, которые они определяют?