私は Rails 5.2 と素晴らしいAhoy gemを実行しており、OMNGOID を ORM として使用しています。
ホームページ コントローラで を呼び出しcurrent_visit.visitor_token
ていますが、次のエラーが発生しています。
MONGODB | ds111336.mlab.com:11336 | heroku_1f375nv7.find | STARTED |
{"find"=>"ahoy_visits", "filter"=>{"visit_token"=>"4f86bf0d-f694-4a46-
b1fb-4ff48722e5c5"}, "sort"=>{"_id"=>1}, "limit"=>1,
"singleBatch"=>true}
MONGODB | ds111336.mlab.com:11336 | heroku_1f375nv7.find | SUCCEEDED |
0.048124999999999994s
Completed 500 Internal Server Error in 297ms (ActiveRecord: 202.8ms)
NoMethodError (undefined method `visitor_token' for nil:NilClass):
ahoy_visit
Cookie に保存されている値は ですが、b5b4fd64-ec42-4e6d-9740-e394ed4a24da
Ahoy は別のものを検索しているvisit_token
ようです (上記のように)。
初期化子/ahoy.rb:
class Ahoy::Store < Ahoy::DatabaseStore
end
# set to true for JavaScript tracking
Ahoy.api = true
Ahoy.server_side_visits = true
ブラウザから Web サイトのデータを消去した場合 (またはシークレット ウィンドウで新しいセッションを開いた場合)、別の日を待つまでエラーは発生しません (セッションの有効期限が切れるまで推測します)。
コード全体を検索しましたが、Ahoy が DB に新しい訪問レコードを作成しない理由がわかりません。
事前に助けてくれてありがとう!