0

私は 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_visitCookie に保存されている値は ですが、b5b4fd64-ec42-4e6d-9740-e394ed4a24daAhoy は別のものを検索している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 に新しい訪問レコードを作成しない理由がわかりません。

事前に助けてくれてありがとう!

4

1 に答える 1