Преобразовать CharField в String - PullRequest
       31

Преобразовать CharField в String

0 голосов
/ 04 августа 2020

Для запроса к базе данных с py mysql, я получаю модель

class MyModel(Model):
    id = AutoField()
    date1 = CharField()
    confirmed = IntegerField()

Получение даты работает, но мне нужно выполнить некоторые вычисления с date1. Для этого мне нужно преобразовать его в объект datetime с помощью datetime.strptime ().

for model in MyModel.select().where(MyModel.confirmed == 0):
    rd = MyModel.date1
    date_time_obj = datetime.strptime(rd, '%d.%m.%Y')

Проблема в том, что date1 - это CharField, а не строка, поэтому strptime не работает. Как я могу получить содержимое CharField в строке? Поскольку остальная часть скрипта работает так, как есть, в идеале это было бы так, чтобы не изменять извлеченные данные.

1 Ответ

1 голос
/ 04 августа 2020

Эта проблема заключается в том, что вы обращаетесь к CharField из класса, а не из экземпляра класса. Попробуйте вместо этого:

for model in MyModel.select().where(MyModel.confirmed == 0):
    rd = model.date1
    date_time_obj = datetime.strptime(rd, '%d.%m.%Y')
...