Python 如何在django中将生成的日期格式转换为其他格式?
我正在django中创建一个应用程序,下一个问题是: 我有一个具有属性“date”的模型,我将日期保存为以下格式:YYYY-MM-DD 但是当我得到一个实例,并且我得到该实例的date属性值时,日期是:“2015年10月10日”,所以我得到了错误:Python 如何在django中将生成的日期格式转换为其他格式?,python,django,date,format,Python,Django,Date,Format,我正在django中创建一个应用程序,下一个问题是: 我有一个具有属性“date”的模型,我将日期保存为以下格式:YYYY-MM-DD 但是当我得到一个实例,并且我得到该实例的date属性值时,日期是:“2015年10月10日”,所以我得到了错误: [u"'Oct.' value has an invalid date format. It must be in YYYY-MM-DD format."] 如何解决此错误?有没有办法将“2015年10月10日”格式化为YYYY-MM-DD 非常感
[u"'Oct.' value has an invalid date format. It must be in YYYY-MM-DD format."]
如何解决此错误?有没有办法将“2015年10月10日”格式化为YYYY-MM-DD
非常感谢你 对于输入
2015年10月10日
,您需要这样写:
from datetime import datetime
datetime.strptime('Oct. 10, 2015', '%b. %d, %Y')
Django的DateField直接保存datetime对象,因此将输入字符串转换为所需格式
您可以尝试使用表单输入以下数据:
class SomeForm(forms.modelform):
date_input_field = forms.CharField()
def clean_date_input_field(self):
try:
return datetime.strptime(self.cleaned_data['date_input_field'], '%d/%m/%Y')
except:
return datetime.strptime(self.cleaned_data['date_input_field'], '%b. %d, %Y')
class Meta:
...
或添加'%b.%d、 中的%Y'