如何在Django中处理日期?

时间:2012-04-15 05:54:18

标签: django django-models

我使用jquery datepicker在搜索表单上以'dd / mm / yyyy'格式向用户显示日期。我的目标受众是英国人。但是,当我尝试使用此日期对DateField的模型进行查询时,我得到了这个异常

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

那么,我应该如何处理这种情况?

2 个答案:

答案 0 :(得分:4)

你有两个选择。

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

<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

答案 1 :(得分:0)

以YYYY-MM-DD格式输入有效日期。

换句话说,将日期从一种格式转换为另一种格式。