0

私はDjango(1.4.1)を初めて使用し、次のようなモデルを持っています:

class Expediente(models.Model):
    numero_expediente = models.IntegerField()
    ano_expediente = models.IntegerField()
    data_expediente = models.DateField(blank=False, null=False)
    urgencia = models.IntegerField()
    complexidade = models.IntegerField(null=True)
    numero_copia = models.IntegerField()
    posse = models.IntegerField()
    grupo = models.IntegerField(null=True)

そして、日付範囲でクエリを実行しようとしています:

now = datetime.now()
lista_expedientes = Expediente.objects.all().order_by('ano_expediente'

data_inicio = datetime.combine(now+timedelta(-30), now.timetz())
data_fim = datetime.combine(now, now.timetz())

exp_antiguidade[0] = lista_expedientes.filter(data_expediente__range=(data_inicio,  data_fim))

などのクエリを試し__gte __rangeましたが、最後に常にエラーが発生します。

例外の種類: TypeError

例外値: 整数が必要です

日時を整数に変換する必要があると思います...

解決策はありますか?

前もって感謝します!

4

1 に答える 1

3

data_expedienteであるDateFieldため、有効なDateオブジェクトが必要ですが、Datetimeオブジェクトを指定しています。以下を修正する必要があります。

from datetime import datetime, timedelta

now = datetime.today().date() # get a Date object
data_inicio = now + timedelta(days=30)
于 2012-09-18T12:58:13.747 に答える