簡體   English   中英

Django從建模日期到今天有數周的時間

[英]Django get weeks from model date to today

我想從今天起算一個日期(存儲在.db中)的星期數。 我嘗試使用網絡上的許多答案,但似乎無法正確生成它。 我嘗試嘗試時遇到的最常見錯誤是

unsupported operand type(s) for -: 'QuerySet' and 'datetime.date'

models.py中的類

class ADown(models.Model):
    Aname = models.CharField(max_length=200)
    dateStart = models.DateTimeField('date start')
def __unicode__(self):
    return self.Aname

在views.py中-我感覺是因為我沒有真正從.all()正確引用'dateStart'

from django.utils import timezone
from ADown.models import Adown
import datetime

def index(request):

d1 = ADown.objects.all()
totalweeks = (d1 - datetime.date.today()).TotalDays / 7
print totalweeks
latest_poll_list = ADown.objects.order_by('-dateStart')[:5]
template = loader.get_template('ADown/index.html')
context = RequestContext(request, {
    'latest_poll_list': latest_poll_list,
    'totalweek': totalweeks,
    'todays': datetime.now(),
})
return HttpResponse(template.render(context))

以及我在.html中的稱呼

</thead>
<tbody>
{% for ADown in latest_poll_list %}
    <tr>
        <td><a>{{ ADown.AName }}</a></td>
        <td><a>{{ totalweek }}</a></td>
        <td><a>{{ ADown.dateStart }}</a></td>
    </tr>
{% empty %}
        <li><a>Something wrong!</a></li>
{% endfor %}
</tbody>
</table>
</div>
{% if latest_poll_list %}

您要獲取數據庫中的所有ADown對象(queryset對象),然后減去當前月份的周數。 您必須在d1變量中引用dateStart來執行此操作。

在這種情況下,queryset ADown.objects.all()不是有效的日期類型,因為您可以使用datetime對象datetime.date.today()進行操作

暫無
暫無

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

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