在Django中如何处理日期? [英] How to handle date in Django?

查看:173
本文介绍了在Django中如何处理日期?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用jquery datepicker,我以搜索表单的形式,以dd / mm / yyyy格式向用户显示日期。我的目标受众是英国人但是,当我尝试使用这个日期查询一个有DateField的模型时,我得到这个例外

I am displaying the date to the user, on a search form, in 'dd/mm/yyyy' format, using the jquery datepicker. My target audience is British. But, when I try to use this date for a query on a model with DateField, I get this exception

Enter a valid date in YYYY-MM-DD format.

那么我应该怎么处理这种情况?

So, how should I handle this scenario?

推荐答案

您有两个选择。

使用 form.DateField - 这将归一化到您可以直接在查询中使用的日期时间对象。只需将jquery对象分配给日期字段:

Use a form.DateField - which will normalize to a date time object that you can use directly in your query. Just assign the jquery object to the date field:

<script type="text/javascript">
 $(function() {
        $("#id_MyDateField").datepicker({ dateFormat: 'dd/mm/yy' });

 });
</script>

手动转换日期

form_date = request.GET.get('the_date',datetime.datetime.now()) # defaults to now
db_date = datetime.datetime.strptime(form_date,'%d/%m/%y')

然后使用 db_date 在您的查询

这篇关于在Django中如何处理日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆