2014-07-14 70 views
0

我想添加時區功能到我的網站。我已經安裝了django_easy_timezones以及added form,以便用戶可以更改它。在模板中顯示會話django_timezone

它工作正常(儘管使用AJAX的網站範圍內的表單會更好),但我想顯示用戶/匿名什麼是當前選定的時區。我認爲以下幾點可行。

{{ request.session.django_timezone }} 

但是它沒有顯示任何東西(可能是它的Null?)。

如果我通過request.session['django_timezone']通過意見,它的工作原理。它在我的情況下打印Europe/Prague

所以我的問題是:

  1. 爲什麼不{{ request.session.django_timezone }}工作?
  2. 我可以打印「UTC + 1」而不是像America/North_Dakota/New_Salem這樣的長字符串時區嗎?

回答

0
  1. 不知道爲什麼,但它開始工作。可能只是重新啓動才能工作。
  2. 我不知道現在如何實現+1而不是時區,但現在就保持原樣。如果想要更短,我將從最後的/中裁剪。
0

在特定情況下,我認爲這可以幫助你:

https://github.com/adamcharnock/django-tz-detect

我已經使用並正常工作!

+0

我試圖安裝它,但它給了我'在此行'{%tz_detect%}''模板渲染過程中出現錯誤''。無論如何,我看着它的代碼,還有'detected_tz'而不是'django_timezone'的會話。所以它不會解決我的第一個問題。這可能會解決第二個問題,因爲存在需要設置的偏移量。它也不會使用geoip進行時區檢測,即easy_timezones。 – Lucas03

+0

我在'TEMPLATE_CONTEXT_PROCESSORS'中缺少'django.core.context_processors.request'。所以設置偏移量的形式應該在'/ tz-detect/set /'url?我得到空白頁面。 – Lucas03