2017-02-20 25 views
1

に二つの日付の間にある、私はsubscription_startは、サブスクリプションの開始日とsubscription_endは、サブスクリプションの終了日であるこの今日の日付がテーブル

class AthleteSubscription(models.Model): 
    user = models.ForeignKey(User, related_name="user_subscription", default='') 
    subscription_start = models.DateField(default=datetime.date.today) 
    subscription_end = models.DateField(default=datetime.date.today() + timedelta(30)) 

のようなDjangoのモデルを持っているオブジェクトを取得します。サブスクリプションは30日間です。現在の日付(今日の日付)がsubscription_startsubscription_endの間にあるレコードを取得したいと思います。これをdjango ORMでどうやって行うことができますか?

答えて

3
qv = AthleteSubscription.objects.filter(subscription_start__gte=some_date, subscription_end__lte=some_date) 
+0

これは正解ですが、「some_date」の価値は何ですか?このソリューションでは、過去30日間の各日付をチェックする必要があります(サブスクリプションが30日の場合)。 –

+0

例: subscription_start = 2017-03-20 subscription_end = 2017-04-22 – marin

+0

あなたが答えて考える1つの解決策は、 'subscription_start__gte = current_data - 30 days'のすべてのオブジェクトを確認できることです。 –

関連する問題