python中的datetime即将到来,而不是date

python中的datetime即将到来,而不是date,python,Python,这是我的创建方法 def create(cls, data): try: cls.format_date_only_element(data,'start_date') cls.format_date_only_element(data,'end_date') promotion = cls(**data) promotion.save()

这是我的创建方法

def create(cls, data):
        try:
            cls.format_date_only_element(data,'start_date')
            cls.format_date_only_element(data,'end_date')            
            promotion = cls(**data)      
            promotion.save()
            return True
        except:
            return False
在上面的代码
formate\u date\u中,仅使用元素
方法

 _date_only_format = '%Y-%m-%d'
 def format_date_only_element(cls,data,date_field):        
        for r in data:        
            if date_field in r:                                
                pdate =  datetime.strptime(data[date_field], cls._date_only_format)
                data[date_field]=pdate
                break
我的创建处理程序是 def post(自我): 自上传=无 form=forms.CreatePromotion(self.request.POST) count=升级。all().count() 如果计数=0: 计数=1 form.display_order.choices=[(项目+1,项目+1)用于范围内的项目(计数)] image=self.get_上传('image')
视频=self.get_上传(“视频”)
如果form.validate(): data=form.data 日志信息(数据) upload\u url=blobstore.create\u upload\u url('/admin/promotion/create') 尝试: datetime.strTime(数据['start\u date'],“%Y-%m-%d”) datetime.strTime(数据['end_date'],“%Y-%m-%d”) 除值错误外: self.session.add_flash(“不正确的日期格式,应为YYYY-MM-DD”,key='error') 返回self.render\u响应(“/admin/promotion/create.html”,form=form,upload\u url=upload\u url)

它的输出类似于(2015-10-29 00:00:00),但我只想输出日期而不是日期时间,提前感谢您可以在datetime对象上使用
.date()
来获取日期-

pdate =  datetime.strptime(data[date_field], cls._date_only_format).date()
您可以在datetime对象上使用
.date()
来获取日期-

pdate =  datetime.strptime(data[date_field], cls._date_only_format).date()

您如何检查输出?是否将日期时间转换为字符串?例如,如果是字符串,则:data[date\u field]的值是多少。“2015-10-22”则代码将为您提供正确的输出。如果要将datetime对象转换为字符串,则应使用datetime.strftime(datetime_对象,“%Y-%m-%d”),这将为您提供所需的结果。是的,请确认其给出的是“2015-10-22”,但在创建方法时,如…flag=Promotion。在此处创建(数据),它将显示“2015-10-22 00-00-00”@乌代:你能把你的促销模型贴出来吗。我想您已经提到了date字段作为datetime字段,这就是为什么它会给出datetime字符串。是的,prateek,我在模型中提到了datetime字段,但我使用的是Stripe,您如何检查输出?是否将日期时间转换为字符串?例如,如果是字符串,则:data[date\u field]的值是多少。“2015-10-22”则代码将为您提供正确的输出。如果要将datetime对象转换为字符串,则应使用datetime.strftime(datetime_对象,“%Y-%m-%d”),这将为您提供所需的结果。是的,请确认其给出的是“2015-10-22”,但在创建方法时,如…flag=Promotion。在此处创建(数据),它将显示“2015-10-22 00-00-00”@乌代:你能把你的促销模型贴出来吗。我想你提到过日期字段是datetime字段,这就是为什么它给出datetime字符串。是的,prateek,我在模型中提到了datetime字段,但我再次使用了Stripe,它给出的是datetime而不是date,它给出的是datetime而不是date