2017-01-25 11 views
0

私は現在、Mongodbで動作しているRailsアプリケーションをPsqlに移行しています。いくつかのロードブロッキングがあり、これが私が解決策を検討していることの1つです。同様の機能を実現するためにモデル属性や代替ソリューションに有効期限インデックスを設定する方法はありますか?これは私たちがMongoで実装した方法です。Ruby on Rails - カスタムトークンの有効期限

field :impersonate_token 
index({ impersonate_token: 1 }, expire_after_seconds: 60) 

これは、次のようなカスタムトークンです。deviseによって偽装可能です。 これを達成する方法がわかっている場合は、Postgresで共有してください。

ありがとうございます。

答えて

0

Postgresには対応する機能がありません。

There is another question quite similar to yoursこの問題の解決に役立つ可能性があります。

テーブルから行を削除する必要がない場合は、単にトークンが有効でない日時に設定したexpires_atフィールドを追加することができます。次に、次のwhereメソッド呼び出しを追加して、有効なトークンを取得できます。

Token.where('expires_at < ?', Time.zone.now)