7

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

前もって感謝します!

4

3 に答える 3

11

日時のドキュメントから

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

redemption_dateしたがって、の属性に直接アクセスすることで、必要な情報を抽出できます。

于 2012-06-27T05:04:07.787 に答える
6
redemption_date.year
redemption_date.month
etc...
于 2012-06-27T01:48:16.183 に答える
4

最初の情報源はPython自体でなければならないことを忘れないでください。datetimeをインポートした後、シェルに入力するだけです。

dir(datetime)
# even more detail on
help(datetime)
于 2012-06-27T01:57:59.310 に答える