проверить date_join пользователя с определенным datetime - PullRequest
1 голос
/ 09 апреля 2019

Я новичок в Python и Django. Я хочу проверить user.date_join с указанием даты и времени, но я не знаю, каков правильный синтаксис.

для получения дополнительной информации: у меня есть функция входа в view.py, и я хочу проверить if user.date_join < yyyy/mm/dd я что-то делаю.

view.py:

from datetime import datetime
from django.contrib.auth.models import User

if request.method == "POST":
    if request.user.is_authenticated:
        if user.date_joined < (yyyy/mm/dd):  # <==== here i have problem
                       #do smt
        else:
           #do smt
    else:
      #blah blah
else:
   #blah blah

Ответы [ 2 ]

0 голосов
/ 09 апреля 2019

Сравнение дат или объектов даты в Python очень просто.Основные операторы сравнения (==,! =, <>,>, <,> =, <=) </strong> перегружены для объекта datetime, поэтому сравнение дат очень интуитивно и быстро.

попробуйте

if user.date_joined.date() < datetime.datetime('%Y/%d/%m'):
   #
0 голосов
/ 09 апреля 2019

Попробуйте это.

Предполагается, что user.date_joined уже является объектом Datetime Вы можете сделать сравнение в объектах DateTime. Преобразуйте формат (гггг / мм / дд) в объект Datetime и выполните сравнение

import datetime

// Let's say you need to check if user is joined 8 days back or more

if user.date_joined < datetime.datetime.now()- datetime.timedelta(days=7):
    // your logic

in your case:

if user.date_joined < datetime.datetime('%Y/%d/%m')
    // your logic


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