Могу ли я извлечь только дату из данных поля datetime, которые уже есть в базе данных? - PullRequest
0 голосов
/ 30 октября 2018

{'uid': u'5db9d835-da23-4abc-a7cd-6beba0dd871f ', 'lastConnection': datetime.datetime (1970, 1, 1, 6, 0, tzinfo =)},

Это запись, которая у меня есть, и клиентский модуль похож на это

class Client(models.Model):
    uid = models.CharField(max_length=128)
    key = models.CharField(max_length=128)
    img = models.TextField()
    version = models.CharField(max_length=20)
    lastConnection = models.DateTimeField()
    role = models.CharField(max_length=128,default="")

    def __str__(self):
        return "%s"%self.uid

На самом деле я хочу получить записи за последний месяц из базы данных. Так что, если кто-то может помочь, было бы здорово.

 def handle(self, **options):
        clients=Client.objects.all()
        c=0
        for c in clients:

            d1 = Client.objects.filter(lastConnection=c.lastConnection).order_by('uid').values('lastConnection','uid')
            last_month = datetime.today() - timedelta(days=30)
            items = Client.objects.filter(lastConnection__gte=last_month).order_by('uid')

Ответы [ 2 ]

0 голосов
/ 30 октября 2018
 def handle(self, **options):
        clients=Client.objects.all()
#       print clients
        c=0
        for c in clients:
            d1 = Client.objects.filter(lastConnection=c.lastConnection).order_by('uid').values('lastConnection','uid')
        last_month = datetime.today() - timedelta(days=30)
        cls=items = Client.objects.filter(lastConnection__gte=last_month).order_by('uid').values('lastConnection','uid')
        print list(cls)

Это то, что я использовал для решения своей проблемы.

0 голосов
/ 30 октября 2018

Для вашего конкретного объекта:

{'uid': u'5db9d835-da23-4abc-a7cd-6beba0dd871f ',' lastConnection ': datetime.datetime (1970, 1, 1, 6, 0, tzinfo =)}

при извлечении 'lastConnection' вы можете использовать ".strftime ('% d /% m /% Y')" из модуля datetime.

например. :

дата и время импорта

data = {'uid': u'5db9d835-da23-4abc-a7cd-6beba0dd871f ',' lastConnection ': datetime.datetime (1970, 1, 1, 6, 0, tzinfo =)}

current_date = (data ['lastConnection']). Strftime ('% d /% m /% Y')

# Ваша текущая дата будет в формате дд / мм / гггг

month = current_date.month

# месяц указывал бы месяц с даты получения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...