0

我在 March10 发布第一份工作(jobname=job1),它应该从(livedate=march15)开始,并在 3 月 20 日到期。

我在 4 月 15 日发布了第二份工作(工作名称 = 工作 2),它应该从(活日期 = 4 月 20 日)开始,并在 4 月 25 日到期

我在 May20 发布第三份工作(jobname=job3),它应该从(livedate=may25)开始,并在 may30 到期。

在使用“jobname”和“livedate”进行过滤时,我必须显示“livedate”应该大于或等于“今天的日期”的作业。

我应该如何写视图?

帮助我并提前感谢。

4

2 回答 2

0
//order by livedate
jobs = Job.objects.filter(livedate__gte=datetime.date.today()).order_by('livedate')

//or order by livedate with filter by job
jobs = Job.objects.filter(
           jobname=job1, 
           livedate__gte=datetime.date.today()
       ).order_by('livedate')
于 2013-04-09T05:03:05.390 回答
0

视图应该看起来像这样。请记住,该filter()方法将返回一个查询集,而不仅仅是一个对象。如果你只想要一个你必须使用的对象get()而不是filter()

import datetime

def yourview(request):
    jobs = Job.objects.filter(jobname="job3", livedate__gte=datetime.date.today())
    context = {'jobs': jobs}
    #render method could differ depending on what version of django you're running
    return render_to_response('template/mytemplate.html', context, context_instance=RequestContext(request))
于 2013-04-09T05:20:40.623 回答