私はRails 3.1とMongoidを使用します。Railsでグローバルに利用できる特定の状態のオブジェクトは1つだけです
私はRESTfulコントローラを使用します。
私はクラスを持っています、説明を言いましょう。
このクラスには、次のような属性があります。stateには、activeと:workingの2つの値があります。
私のクライアントは、N個の作業バージョン(:働いている)が必要ですが、1つだけです:毎回アクティブな説明。つまり、説明を#アクティブにすると、古いアクティブなものを無効にする必要があります。
私は、コールバックアプローチ(before_validation =>:deactivate_previous_description)を使用しています。作業コピーを有効にしようとする限り、問題ありません。しかし、私は同じことを:アクティブな記述にすると、コールバックがその状態を「働き」に戻すため、非アクティブになります。
私は間違っていますか?この問題を解決する良い方法はありますか?