将 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')
对于使用 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')