Python Django错误,强制使用Unicode:需要字符串或缓冲区,找到datetime.timedelta
以下是发生错误的代码:Python Django错误,强制使用Unicode:需要字符串或缓冲区,找到datetime.timedelta,python,django,datetime,unicode,Python,Django,Datetime,Unicode,以下是发生错误的代码: date_arrive = datetime.datetime.strptime(request.session.get('arrival'), '%m/%d/%Y'),\ date_depart = date_arrive + datetime.timedelta(days=request.session.get('nights')))).save() 每次Django到达此视图时,它都会抛出错误: Exception Value: coercing to Unico
date_arrive = datetime.datetime.strptime(request.session.get('arrival'), '%m/%d/%Y'),\
date_depart = date_arrive + datetime.timedelta(days=request.session.get('nights')))).save()
每次Django到达此视图时,它都会抛出错误:
Exception Value: coercing to Unicode: need string or buffer, datetime.timedelta found
此处arrival是一个有效的datetime对象,nights是一个整数。Id建议您包含函数调用的完整列表
似乎您尝试连接unicode和datatime对象,但这是不可能的。显然,您必须将date_Arrival转换为datetime或“datetime.timedelta(days=request.session.get('nights')”转换为unicode,具体取决于函数作为date_Deep参数所需的类型。您应该能够通过确保非unicode/非字符串(如整数和datetime对象)被str包围来解决此问题(此处为您的日期对象) 当我在Django中遇到此错误时,我能够通过以下两种方法修复它:
def __str__(self):
return str(self.datetimeobject) + " other string return info"
及
def __str__(self):
return unicode(self.datetimeobject) + " other string return info"