Railsアプリケーションに、時間の経過に伴うフォロワーの傾向を示す機能を構築したいと思います。
現在、私の次の方法論には、関係オブジェクトの作成と破棄が含まれます。followingは、フォロワーのIDを使用してオブジェクトを作成し、followingとunfollowingはその関係オブジェクトを削除します。
フォローを解除するとリレーションシップオブジェクトが削除されるため、いつでもフォローに戻ってフォロワーが何人存在したかを確認することはできません。
これを解決するために、私が考えることができる最良の解決策はこれです:
フォローを解除するときにリレーションシップオブジェクトを削除する代わりに、たとえば-1の負の値を持つ新しいオブジェクトを作成します。以下は、+1の正の値を持つオブジェクトを作成します。したがって、特定のペアの合計値を合計すると、それらが現在フォローしているかどうか(1または0)が得られますが、過去の傾向は、特定のフォローの合計フォロー値を合計することによって計算することもできます。
私の質問は:これはこの問題の最もエレガントな解決策ですか?それを行う簡単な方法はありますか?cronジョブを使用して日次の数値を出力することは可能ですが、データが重複しているようです。他に何か提案はありますか?
どんな助けでも大歓迎です!