0

私は2つの日付ピッカーから2つの日付を持っています date1 = '2013-01-22' date2 = '2013-01-28' そして私はこのようなモデルを持っています

class SampleModel(models.Model):
    item = models.CharField()
    from_date = models.DateField()
    to_date = models.DateField()

私がやるべきことは、date1 と date2の間の日付のいくつかがfrom_date と to_date (同じ項目) の間にあるかどうかを知ることです。

たとえば、from_date が '2013-01-24' で to_date が '2013-01-27' の場合、入力 date1 と date2 (24 25 26 27 日) の日付の一部が含まれ、true が表示されます。 .

交差点のようです。質問はありますか?

date1 が from date より小さく、date2 が to date より大きいため、from_date の gte と to_date の lte は機能しません。

4

1 に答える 1

1

それは数学の問題です。このクエリはうまくいくはずです:

date1 <= to_date and date2 >= from_date

編集

次の django ステートメントにより、目的の結果が得られるはずです。

SampleModel.objects.filter(to_date__gte=date1, from_date__lte=date2)
于 2013-01-15T18:07:19.477 に答える