Skip to main content

轻松为用户设置本地化时区

项目描述

https://badge.fury.io/py/awesome-django-timezones.svg https://travis-ci.org/wgordon17/awesome-django-timezones.svg?branch=master https://codecov.io/gh/wgordon17/awesome-django-timezones/branch/master/graph/badge.svg

轻松为用户设置本地化时区

文档

完整的文档位于https://awesome-django-timezones.readthedocs.io

快速开始

安装 Awesome Django 时区:

pip install awesome-django-timezones

将其添加到您的INSTALLED_APPS

INSTALLED_APPS = (
    ...
    'awesome_django_timezones',
    ...
)

将 DjangoTimezonesMiddleware 添加到您的MIDDLEWARE_CLASSES

MIDDLEWARE_CLASSES = (
    ...
    'awesome_django_timezones.middleware.TimezonesMiddleware',
    ...
)

js/awesome_django_timezones.js添加到您的基本模板

<script src=<s>"{% static 'awesome_django_timezones/js/awesome_django_timezones.js' %}"</s>></script>

(可选)如果您需要 Django 在 Admin 页面上识别时区,则必须在your_project/templates/admin/base.html中扩展 Admin base.html

{% extends 'admin/base.html' %}
{% load static %}

{% block footer %}
  {{ block.super }}

  <script src="{% static 'js/awesome_django_timezones.js' %}"></script>

{% endblock %}

特征

  • 提供确定最终用户的时区并在 Django 中激活该时区的准确方法。

  • 使用客户端 JavaScript 检测来确定时区的最准确方法。

    • 使用广泛支持的本机Intl JavaScript 库 来检测客户端的时区。此库当前未针对 IE11 实现。

  • 通过 IP API 回退到服务器端时区检测。

    • 为 IE11 客户端或禁用 JavaScript 的客户端提供回退。

    • 依赖于https://ipapi.co的第三方 IP API 查找。如果您每月需要超过 30k IP 查找或需要支持(无从属关系),请考虑购买计划。

  • 设置一个备用时区以始终使用,以防在您的settings.py中使用AWESOME_TZ_DEFAULT_TZ找不到时区。(请务必使用https://en.wikipedia.org/wiki/List_of_tz_database_time_zones中的“TZ 数据库名称”列)

运行测试

代码真的有效吗?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install -r requirements_test.txt
(myenv) $ tox

学分

用于渲染此包的工具:

历史

0.1.0 (2019-02-04)

  • PyPI 上的第一个版本。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

awesome-django-timezones-0.3.0.tar.gz (7.4 kB 查看哈希)

已上传 source

内置分布

awesome_django_timezones-0.3.0-py2.py3-none-any.whl (6.6 kB 查看哈希

已上传 py2 py3