为用户轻松设置本地化时区
awesome-django-timezones的Python项目详细描述
为用户轻松设置本地化时区
快速启动
安装Awesome Django时区:
pip install awesome-django-timezones
将其添加到您的INSTALLED_APPS:
INSTALLED_APPS=(...'awesome_django_timezones',...)
将djangTimeZoneMiddleware添加到您的MIDDLEWARE_CLASSES:
MIDDLEWARE_CLASSES=(...'awesome_django_timezones.middleware.TimezonesMiddleware',...)
将js/awesome_django_timezones.js添加到基本模板中
<scriptsrc="{% static 'awesome_django_timezones/js/awesome_django_timezones.js' %}"></script>
(可选)如果您需要django在管理页面上知道时区,则必须扩展 管理员base.html在your_project/templates/admin/base.html
{%extends'admin/base.html'%}{%loadstatic%}{%blockfooter%}{{block.super}}<scriptsrc="{% static 'js/awesome_django_timezones.js' %}"></script>{%endblock%}
功能
- 提供在django中确定最终用户时区并激活该时区的准确方法。
- 使用客户端的javascript检测来确定时区的最精确方法。
- 使用广泛支持的本地Intl JavaScript library 以检测客户端的时区。此库当前未为IE11实现。
- 通过IP API返回到服务器端时区检测。
- 为ie11客户端或禁用javascript的客户端提供回滚。
- 依赖于由https://ipapi.co进行的第三方IP API查找。如果您每月需要超过3万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上的第一个版本。