将 CharField 转换为字符串

Convert CharField to String

对于使用 pymysql 的数据库查询,我正在获取模型

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

获取日期有效,但我必须对 date1 进行一些计算。为此,我需要使用 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 的内容转换成字符串?由于脚本的其余部分按原样工作,理想情况下它不会更改检索到的数据。

此问题是您从 class 访问 CharField,而不是 class 的实例。试试这个:

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