我没有使用任何框架,只用rack gem来构建一个web应用程序。我正在尝试为成功登录的用户设置cookie:
use Rack::Session::Cookie
我得到以下错误:
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/rack-2.2.7/lib/rack/session/cookie.rb:155:in `<class:Cookie>': undefined method `DelegateClass' for Rack::Session::Cookie:Class (NoMethodError)
我已经尝试将机架版本指定为
gem "rack", "~> 3.0"
但一切都没变
怎么修?
1条答案
按热度按时间owfi6suc1#
您可能最近从机架版本2更新到3。或者您正在使用机架版本2的教程或文档,但正在运行机架3。
引用自rack的UPGRADE-GUIDE.md:
Rack::Session
被移到一个单独的gem。以前,
Rack::Session
是rack
gem的一部分。并不是每个应用程序都需要它,它增加了rack
的安全表面积,因此决定将其提取到自己的gemrack-session
中,可以独立更新。使用
rack-session
的应用程序需要添加该gem作为依赖项: