2011-10-25 3 views
0

私は自分のシンプルなブログシステムを構築しています。システム内のすべての記事には、設定するための2つの入力があり、訪問者には記事が表示され、それが訪れるまで。さんが意味するように、例えばRails 3&ActiveRecord - 日付についてのSQLクエリー

、私はこれに設定される場合は、値

2011-10-25と2011-10-28を入力し、記事が目に見える3日間となります。まだ記事を見たいと思っていたら、0000-00-00の値を入力したいと思います。

しかし、今私は、SQLクエリを作成する方法を考える - 私のような何かを試してください:

Article.where('from_date <= ? AND to_date >= ?', Func.today, Func.today) 

私はそれから、日付を設定して、私は目に見える資料がしたいことを耕している場合、これは私の作品を。しかし、私はそれを設定すると毎回(0000-00-00)の記事を表示したいので、このクエリは動作しません...

私はヒントを更新する方法についてお聞きしたいと思いますそのため上記のSQLクエリ...代わりにすべてゼロに日付フィールドを設定する事前に

おかげで、

マニー

答えて

2

は、nilにそれらを設定し、クエリ内のnull値を探してください。

Article.where('(from_date IS NULL OR from_date <= ?) AND (to_date IS NULL OR to_date >= ?)', Func.today, Func.today) 
+0

返信いただきありがとうございます。これは私の生成されたクエリです: 'SELECT articles。*記事からWHERE(from_date IS NULL OR from_date <= '2011-10-25')AND(to_date IS NULL OR to_date> = '2011-10-25'))' - 私は10月28日の記事を表示するように設定しました(データベースには** 2011-10-28 **の価値があります)、記事はまだ表示されています(すでに現在) – user984621

+0

@ user984621 from_dateを2011-10に設定しました-28とto_date to null – clyc

関連する問題