【问题标题】:How to extract year, month, day, hour and minutes from a DateTimeField?如何从 DateTimeField 中提取年、月、日、小时和分钟?
【发布时间】:2012-06-27 01:45:20
【问题描述】:

我想知道如何从 DateTimeField 中提取年、月、日、小时和分钟?

我要提取信息的 datimefield 称为“redemption_date”,模型的代码是这样的:

from django.db import models
from datetime import datetime, timedelta
   class Code(models.Model):
        id = models.AutoField(primary_key=True)
        code_key = models.CharField(max_length=20,unique=True)
        redemption_date = models.DateTimeField(null=True, blank=True)
        user = models.ForeignKey(User, blank=True, null=True)

        # ...
        def is_expired(self):
            expired_date = datetime.now() - timedelta( days=2 )
            my_redemtion_date = self.redemption_date
            if self.redemption_date is None:
                return False
            if my_redemtion_date  < expired_date:
                    return True
            else:
                return False

提前致谢!

【问题讨论】:

    标签: python django


    【解决方案1】:
    redemption_date.year
    redemption_date.month
    etc...
    

    【讨论】:

      【解决方案2】:

      From the datetime documentation

      [...]
      class datetime.datetime
      A combination of a date and a time. Attributes: year, month, day, hour, 
      minute, second, microsecond, and tzinfo.
      [...]
      

      因此您可以通过直接访问redemption_date 的属性来提取您想要的信息。

      【讨论】:

      • 如果没有示例,这会令人困惑。
      【解决方案3】:

      不要忘记您的第一个信息来源应该是 python 本身。导入日期时间后,您只需输入您的 shell:

      dir(datetime)
      # even more detail on
      help(datetime)
      

      【讨论】:

        猜你喜欢
        • 2020-10-27
        • 1970-01-01
        • 2011-07-26
        • 2015-01-18
        • 1970-01-01
        • 2012-05-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多