Django と MySQL を使用して、eBay オークションに有効期限があるのと同様に、ユーザーが期限のある投稿を作成できるアプリを構築しています。これらの投稿は、カテゴリ別にグループ化された表にリストされています。期限切れの投稿がパーマリンク ページで引き続きアクセスできるようにしたいので、今後のリスト ページから削除するためにデータベースから削除する必要はありません。私の観点からこれを行うにはどうすればよいですか?現在、リスト テーブルには期限切れのエントリと次のエントリの両方が含まれていますが、クリーンアップしたいと考えています。
1 に答える
1
Post の有効期限に DateTimeField を使用していると仮定すると、ビューでこれを行うことができます。
from datetime import datetime
def upcoming(request):
now = datetime.now()
queryset = YourModel.objects.filter(expiration_date__gt=now)
# your own logic here
これらの行は、expiration_date が将来のすべてのエントリを返します。
Expiration_date__gt は、「次の日付より後の有効期限」を表します。Django は、モデル フィールドに基づいてこれらの関数を自動的に追加します。__gte (より大きい)、__lt (より小さい)、lte (より小さいか等しい) にもアクセスできます。最後のものを使用して、期限切れのエントリのみを表示することもできることに注意してください。
queryset = YourModel.objects.filter(expiration_date__lt=now)
詳細については、フィールド ルックアップに関する Django ドキュメントを参照してください。
(より具体的な例が必要な場合は、コードに関する情報を提供してください)
于 2013-10-03T19:24:38.213 に答える