我最近将我的应用程序升级到了rails 7,现在我的许多测试都失败了,出现了下面的错误。
ActionDispatch::Request::Session::DisabledSessionError: Your application has sessions disabled. To write to the session you must first configure a session store
我怀疑这与devise
有关。以下是导致问题的代码。
def login_user(user)
post "/api/v2/login", :params => { :username => user.username, :password => user.password }
assert_response :success, response.body
json = JSON.parse(response.body)
{:authentication_token => json["user"]["authentication_token"]}
end
如果我从application.rb
文件中删除config.api_only = true
行,则测试用例将顺利通过,但由于其他问题,我无法真正删除该行。有人能为这个问题找到合适的解决方案吗?
1条答案
按热度按时间jtw3ybtb1#
我发现了一个类似的问题:Rails 7 API only app requiring session store with Devise
建议在
config/application.rb
中添加以下内容:基于GitHub上的此问题