使用parsedatetime包将可读的日期/时间表达式解析为Django字段
项目描述
Django Human DateTime 解析
- 作者:
Justin Quick <justquick@gmail.com>
- 版本:
0.1
此工具使用parsedatetime包将可读的表单输入(如“明天7PM”)转换为datetime对象(如datetime.datetime(2010, 4, 9, 19, …))。此应用需要parsedatetime和pytz。该应用提供了一套字段来替换Django的DateTimeField、DateField和TimeField。可以通过以下方式获取它们:
from humandt.fields import HumanDateTimeField, HumanTimeField, HumanDateField
然后,您可以根据需要将它们用作Django表单中的表单字段。
from django.forms import Form class ExampleForm(Form): datetime = HumanDateTimeField(required=False) time = HumanTimeField(required=False) date = HumanDateField(required=False)
示例项目
下载最新的源代码并启动开发服务器。请确保您有最新的Django版本。
git clone git://github.com/justquick/django-human-datetime.git cd django-human-datetime pip install parsedatetime pytz django python setup.py install cd example_project python manage.py runserver
如果一切顺利,它将可在http://127.0.0.1:8000/上使用。那里有一个示例表单,它只是输出解析的日期/时间输入。查看example_project.views中的使用示例。要测试humandt应用,停止服务器并运行以下命令:
python manage.py test humandt