私は毎週のモデルでレールアプリを手に入れました。別の言い方をすれば、すべてのユーザーは月曜日の朝に週に1回生成されるモデルのインスタンス(GroceryListとしましょう)を持っています。私は簡単に、おそらく以下のように、ルビー風の構文を使用して過去のリストを参照できるように、私のGroceryListモデルにいくつかのシンタックスシュガーを統合したいと思います:Rubyクラスをタイムフレームに結びつける
current_user.grocery_list.1.week.ago
現状では、各GroceryList項目はCREATED_ON日を持って、もちろん、週の始まり(月曜日)を示すstart_dateもあります。
このタイプの機能をルビークラスに結びつける確立された方法はありますか?もしそうなら、どのように達成できますか?
ありがとうございます。
:
次に、あなたのような単純なものを使用して、任意の関係を通じて取得することができます1.week.ago) 'とそれを行うメソッドを定義する(明らかに命名はあなた次第です)? –
これは何か? 'current_user.list_from(1.week.ago)' user.rbで : 'デフlist_from(タイムフレーム) list.where:私が思う(START_DATE =>タイムフレーム) end'何も、私はよそれがベストプラクティスなのかどうかは分かりません。私が採用しなければならないいくつかの明白なイディオムを無視していない限り、そのシンプルな解決策にはとても満足しています。 – Chazu
IMO、日付をとり、あなたが望むものを返すメソッドを作ることは、行く方法です。 –