Django应用程序,为Pytz时区对象提供数据库和表单字段。

django-timezone-field的Python项目详细描述


https://img.shields.io/travis/mfogel/django-timezone-field/develop.svghttps://img.shields.io/coveralls/mfogel/django-timezone-field/develop.svghttps://img.shields.io/pypi/dm/django-timezone-field.svg

pytz时区对象提供数据库和表单字段的django应用程序。

示例

数据库字段

importpytzfromdjango.dbimportmodelsfromtimezone_fieldimportTimeZoneFieldclassMyModel(models.Model):timezone1=TimeZoneField(default='Europe/London')# defaults supportedtimezone2=TimeZoneField()timezone3=TimeZoneField()my_inst=MyModel(timezone1='America/Los_Angeles',# assignment of a stringtimezone2=pytz.timezone('Turkey'),# assignment of a pytz.DstTzInfotimezone3=pytz.UTC,# assignment of pytz.UTC singleton)my_inst.full_clean()# validates against pytz.common_timezonesmy_inst.save()# values stored in DB as stringstz=my_inst.timezone1# values retrieved as pytz objectsrepr(tz)# "<DstTzInfo 'America/Los_Angeles' PST-1 day, 16:00:00 STD>"

表单域

fromdjangoimportformsfromtimezone_fieldimportTimeZoneFormFieldclassMyForm(forms.Form):timezone=TimeZoneFormField()my_form=MyForm({'timezone':'America/Los_Angeles',})my_form.full_clean()# validates against pytz.common_timezonestz=my_form.cleaned_data['timezone']# values retrieved as pytz objectsrepr(tz)# "<DstTzInfo 'America/Los_Angeles' PST-1 day, 16:00:00 STD>"

安装

  1. pypi使用pip

    pip install django-timezone-field
    
  2. 将时区字段添加到您的settings.INSTALLED_APPS

    INSTALLED_APPS=(...'timezone_field',...)

更改日志

  • 3.0(2018-09-15)
    • 支持django 1.11、2.0、2.1
    • 添加对Python3.7的支持
    • 更改默认的人类可读时区名称以排除下划线 (#32&;#37
  • 2.1(2018-03-01)
    • 添加对django 1.10、1.11的支持
    • 添加对Python3.6的支持
    • 添加车轮支架
    • 在数据库字段中支持字节(#38&;#39
  • 2.0(2016-01-31)
    • 放弃对django 1.7的支持,添加对django 1.9的支持
    • 放弃对Python3.2、3.3的支持,添加对Python3.5的支持
    • 从源分发中删除测试
  • 1.3(2015-10-12)
    • 放弃对django 1.6的支持,添加对django 1.8的支持
    • 各种bug fixes
  • 1.2(2015-02-05)
    • 对于表单域,更改了接受时区的默认列表 pytz.all_时区pytz.common_时区,匹配数据库字段 行为。
  • 1.1(2014-10-05)
    • Django 1.7兼容性
    • 添加了对格式化选项的支持kwarg as[[[lt;str>;,<;str>;],…], 除了以前的格式[[[<;pytz.timezone>;,<;str>;],…]
    • 已将默认接受时区列表从pytz.all\u timezones更改为 pytz.common\u时区。如果你的数据库中有时区 pytz.all_timezones但不在pytz.common_timezones中,这是一个 向后不兼容的更改。旧的行为可以通过 在您的 模型定义。
  • 1.0(2013-08-04)
    • 初始版本为时区字段。

运行测试

  1. 安装tox

  2. 从存储库根目录中,运行

    tox
    

    postgres需要在本地运行,sqlite需要 安装是为了让毒物发挥作用。

找到虫子了吗?

若要提交错误或修补程序,请转到django-timezone-field on github

学分

最初改编自Brian Rosner’s django-timezones。贡献者的完整列表可以在github上找到。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java ParsePushReceiver参数   java如何从设备读取完整数据?   java将java_设置为home,但忽略错误   java如何从歌曲中对专辑进行排序?   java libnaude+windows 10 x64+Eclipse   java如何将maven目标更改为如图所示的想法中的quickicon?   java swing布局中心面板,可滚动显示多个窗口窗格   使用MOSQUITO代理的mqtt中的java SSL   java如何通过属性值获取XML字符串   java在服务器每次启动时停止GWT编译   java如何让javac搜索类路径的子目录?   可以比较java中的两个不同类吗?   JAVAAndroid活动内部类中的lang.NoClassDefFoundError   java HttpServletRequest获取请求头参数块   C++socket与java客户端的连接   java如何在Apache commons http客户端上使用SSL客户端证书   使用预编译正则表达式模式提高java速度   JavaRhino将两个已编译脚本合并为一个脚本