このコードは突然動作を停止し、なぜわかりません。 ?未定義のメソッド "httpdate" for "...":文字列
class MyClass < ApplicationController
...
def method
@myobject = @my_objects.order(:updated_at).last
if stale?(@myobject)
...
end
end
end
古くなった場合は、問題がである(@ MyObjectに)とエラーがMyClassの#で
NoMethodErrorは2016年10月23日20」のための
未定義のメソッドを `httpdate」my_methodです。 44:26 UTC ":文字列
actionpack(5.0.0.1)のlib/action_dispatch/HTTP/cache.rb:64:
` LAST_MODIFIED =」で
class MyClass < ApplicationController
...
def my_method
@myobject = @my_objects.order(:updated_at).last
t = Time.parse(@myobject.updated_at)
if stale?(etag: @myobject, last_modified: t)
...
end
end
end
しかし、最初のバージョンはAPI docによってあまりにも動作するはずですし、それが働いた:問題
は、コードを交換することによって解決されました!
最初のバージョンが動作しない原因を理解して問題を解決したいと思います。私が最近変更したのは - Debianパッケージのアップグレードですが、これが原因だとは思いません。
OS:のDebian GNU/Linuxの8.6(ジェシー)
Rubyのバージョン:ルビー2.3.0 [x86_64の(RVM)
レールバージョン:5.0.0.1