このトピックを詳しくグーグルで検索しましたが、自分のユースケースに当てはまるものは何も見つかりませんでした。
シンプルで小さな広告サーバーがあります。のモデルとAd
、 と と呼ばれる 2 つの組み込みモデルがImpression
ありClick
ます。
class Ad
include MongoMapper::Document
key :name, String
key :image, String
key :url, String
has_many :clicks
has_many :impressions
end
class Click
include MongoMapper::EmbeddedDocument
key :ip, String
timestamps!
end
class Impression
include MongoMapper::EmbeddedDocument
key :ip, String
timestamps!
end
そして、ここに私が得ているエラーがあります:
SystemStackError - stack level too deep:
/home/deployer/.rbenv/versions/1.9.3-p125/lib/ruby/gems/1.9.1/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/keys.rb:194
これが起こっている地域は次のとおりです。
@ad.impressions << Impression.new({:ip => request.ip})
@ad.save
現在、モデルにはコールバックがありません。これが、多くの人にこのエラーが発生する理由です。
誰にも洞察がありますか?
ありがとう。