0

私は現在、次のようにして発生しているイベントを一覧表示しているイベント一覧サイトを持ってtodayいます。

def load_today_events
 @today_events = Event.find(:all, :conditions => ['start_date =?', Date.today])
end

これは完全にうまく機能します。

最近end_date、1日以上にわたるイベント用を紹介しました。

明らかに、上記のコードを使用するとstart_date、イベントが通過すると、イベントがリストから消えます。

私はここで精神的な障害を抱えているかもしれませんが、開始日が過ぎたが終了日が過ぎていないイベントを表示する方法を一生理解することはできません。

私は次のようなものが欲しいと思います:

date.todayまたはと等しい、またはその間のstart_dateイベントを検索するend_date

これにどのようにアプローチするのが最善かというアイデアはありますか?

4

1 に答える 1

1

これを正しく理解しているかどうかはわかりませんが、日付を使用してできることの例をいくつか示します。
以下の例でcurrent_dateは、postgresqlは今日の日付の関数です。これは、current_dateがstart_date以上でend_dateより小さいイベントと一致します。

@today_events = Event.where("current_date >=  ? and current_date <= ?", start_date, end_date)

別のアプローチは次のようになります。

@today_events = Event.where("start_date >=  ? and end_date <= ?", start_date, end_date)

この例は、現在の日付間隔からのイベントを示しています。
これが基本ですので、自分の問題に応用していただければ幸いです。

于 2012-09-02T15:33:06.210 に答える