当前位置: 首页 > 知识库问答 >
问题:

如何以今天为截止日期获取待办事项

云慈
2023-03-14

所以我仍然在创建我的待办事项列表应用程序,我想呈现所有以今天的日期为截止日期的项目,以便提醒用户悬而未决的任务。

models.py

from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class ToDo(models.Model):
    owner = models.ForeignKey(User, on_delete=models.CASCADE)
    todo = models.CharField(max_length=50)
    description = models.TextField(max_length=200, blank=True)
    created = models.DateField(auto_now=True)
    end = models.DateField()
    start = models.DateField()
    completed = models.BooleanField(default=False)

    def __str__(self):
        return f'{self.owner} - {self.todo}'

views.py

def index(request):
    activities = ToDo.objects.all()
    today = ToDo.objects.get(end=datetime.date.today)
    todo = ToDo.objects.count()
    complete = ToDo.objects.filter(completed=True).count()
    percent = complete * 100 // todo 
    if request.method == 'POST':
        try:
            search = request.POST.get('todo')
            activities = ToDo.objects.filter(todo__icontains=search)
            
        except:
            search = request.POST.get('end')
            activities = ToDo.objects.filter(end=search)

    context = {
        'activities' : activities,
        'percent' : percent,
        'today' : today,
    }
    return render(request, 'home.html', context)

我在myviews.py中导入了DateTime

共有2个答案

壤驷心思
2023-03-14
today = ToDo.objects.get(end=datetime.date.today)

这就是问题所在。get()用于获取一行,您需要所有匹配的行,这是由过滤器完成的。您今天也将发送函数,而不是使用today()调用它。

这样做:

today = ToDo.objects.filter(end=date.today())
柴阳云
2023-03-14

试试这个

from django.utils import timezone

def index(request):
    today = timezone.localtime(timezone.now())

    deadline_today = ToDo.objects.filter(
        end__year=today.year,
        end__month=today.month,
        end__day=today.day
    )

    context = {
        ...
        'today' : deadline_today ,
    }
 类似资料:
  • 问题内容: 我正在使用Selenium IDE 测试我的Web应用程序。在某些测试案例中,我必须断言今天的日期出现在页面上。我无法在测试中对今天的日期进行硬编码,因为今天的日期每天都在变化。如何获取Selenium IDE中的当前日期,月份和年份? 问题答案: 不知道您的日期采用什么格式,但是您可以执行以下操作:

  • 问题内容: 如何在Sparksql中获得一天,与mysql中相同。 问题答案: 算术函数使您可以对包含日期的列执行算术运算。 例如,您可以计算两个日期之间的差额,为日期添加天数或从日期中减去天数。内置的日期计算功能包括,, ,,, ,和。 我们需要的是 date_sub(时间戳记开始日期,整数天),用途:从TIMESTAMP值中减去指定的天数。第一个参数可以是字符串,如果它使用可识别的格式(如TI

  • 问题内容: 换句话说,我想要提供Joda-Time的功能: 但没有Joda-Time,只有java.util.Date。 不推荐使用.setHours()等方法。有没有更正确的方法? 问题答案: 由于不推荐使用这些方法,因此您可以使用: 如果最终需要一个对象,只需调用

  • 获取今天的日期(年、月、日) 用法 Your browser does not support the video tag. 案例:小闹钟 功能:2019年12月25日,播放圣诞快乐歌

  • 问题内容: 如何让今天的日期YYYYMMDD在火鸟,我一看下面的,但不能想出该怎么写。 问题答案: 我认为您可以:

  • 问题内容: 如何编写查询以获取今天的日期数据? 问题答案: 正确答案将取决于您的确切类型。假设它是类型: 如果是: