簡體   English   中英

如何獲取Modelfield-datetime.now

[英]How to get the Modelfield - datetime.now

我一直在努力地對日期進行算術運算。 首先,我得到了兩個datetimeFields(模型)之間的日期,沒關系。 但我想獲得(To_do.end)-datetime.now()

我有兩個datefields的區別:
To_do.objects.annotate(delta = ExpressionWrapper(F('end')-F('start'),output_field = DurationField())

因為我一直在嘗試使用variable = datetime.now()進行相同操作,但仍然沒有得到它

多數民眾贊成在測試中,我試圖獲得成功

def index(request):
    myDate = datetime.now()
    days_left1 = To_do.objects.annotate(
        delta=ExpressionWrapper(F('end') - myDate, output_field=DurationField()))
    return render(request, 'ongoingtest.html', {
        'myDate': myDate,
        'days_left1': days_left1,
    })

多數民眾贊成我做了什么來獲得兩個模型領域之間的差異

class HomeView(ListView):
    template_name = 'ongoing.html'
    model = To_do

    def get_queryset(self):
        return To_do.objects.annotate(
            delta=ExpressionWrapper(F('end') - F('start'), output_field=DurationField())
        )

models.py:

class To_do (models.Model):
    task = models.CharField(max_length=150)
    topic = models.CharField(max_length=150)
    how = models.TextField(max_length=600)
    start = models.DateTimeField(auto_now_add=True)
    end = models.DateTimeField(blank=False)
    updated_at = models.DateTimeField(auto_now=True)

    def __str__(self):
        return self.task

只需獲取To_do.end-datetime.now()

使用Now數據庫功能: https : //docs.djangoproject.com/en/2.2/ref/models/database-functions/#now

from django.db.models.functions import Now

def index(request):
    myDate = datetime.now()
    days_left1 = To_do.objects.annotate(
        delta=ExpressionWrapper(F('end') - Now(), output_field=DurationField()))
    return render(request, 'ongoingtest.html', {
        'myDate': myDate,
        'days_left1': days_left1,
    })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM