残念ながら、私はまだ Rails の初心者すぎるので、さまざまなアプローチを考えて試してみましたが、思うように動作せず、もう一度助けを求める必要があります。
私は REST コメント投票メカニズムを持っており、コメントごとに親指を上げたり下げたりしています。これは正常に機能し、それぞれがcounter_cacheで処理されます。ここで、これらの賛成票と反対票に基づいて、各コメントのプラスマイナス値、thumbs_up-votes - thumbs_down-votes を計算します。それを処理するのが最も効率的な方法かどうかはわかりませんが、プラスマイナス値をコメント モデルの追加の整数属性として持つことを計画しています (親指の上下は独自のモデルです)。したがって、私が基本的に望んでいるのは、thumbs_up が保存されると、コメントの plusminus attr が自動的に になり+= 1
、それぞれ thumbs_down.save になることですa -= 1
。
このようなアクションは、thumbs_up コントローラー内からどのように発行できますか? form_for を変更する必要がありますか、それとも私のアプローチは完全に間違っていますか?
別のモデルの属性を処理するための after_save コールバックはありますか?