😃

【Django】modelからデータを取り出す方法の備忘録(随時更新)

2021/06/01に公開

models→各々のmodel名へ変換してください。

and, or検索

# and条件
entries = models.objects.filter(Q(tag=1) & Q(tag2=1)) 

# or条件
qs = models.objects.filter(Q(tag=1) | Q(tag=2))

前日朝9時から当日の朝8:59までの範囲で検索する

today = datetime.datetime.today()

delta_1day = datetime.timedelta(days=1)
delta_9hour = datetime.timedelta(hours=9)
delta_1day = datetime.timedelta(days=1)
delta_1microsec = datetime.timedelta(microseconds=1)

start_dt = start_dt + delta_9hour
end_dt = start_dt + delta_1day - delta_1microsec

qs = models.objects.filter(check_time__range=(start_dt, end_dt))

取得制限

qs = models.objects.all().order_by(id)[0:10] # 先頭から10件取得

Discussion