簡體   English   中英

Django admin:時區顯示

[英]Django admin: timezone display

所以我正在創建一個應用程序,您可以在其中找到在各個位置發生的活動

在django-admin頁面上,我希望能夠修改活動(有效)。

但是活動有一個開始時間 - 我希望這個開始時間與位置在同一時區。

所以我希望它在活動管理頁面上顯示與位置相同的時區中的開始時間,但是當保存時它應該轉換為UTC時間。

starttime采用內聯formset,因為它可以有多個開始時間。

我找到了一種在保存對象時更改日期時間的方法,但是當它在內聯函數中呈現時,我無法找到修改它的方法。

如何修改管理頁面中呈現的數據?

所以我希望它在活動管理頁面上顯示與位置相同的時區中的開始時間,但是當保存時,它應該轉換為UTC時間。

根據Django關於表格中時區感知輸入的文檔( https://docs.djangoproject.com/en/1.10/topics/i18n/timezones/#time-zone-aware-input-in-forms ):

當您啟用時區支持時,Django會解釋在當前時區中的表單中輸入的日期時間,並在cleaning_data中返回有意識的日期時間對象。

根據我的理解,你想要的是什么。 這導致我們進入默認時區和當前時區https://docs.djangoproject.com/en/1.10/topics/i18n/timezones/#default-current-time-zone ),其中指出:

當前時區是用於渲染的時區。

您應該使用activate()將當前時區設置為最終用戶的實際時區。 否則,使用默認時區。

因此,使用activate()https://docs.djangoproject.com/en/1.10/ref/utils/#django.utils.timezone.activate )來設置時區參數,你就可以了。

嘗試設置
USE_L10N = False上的USE_L10N = False

https://docs.djangoproject.com/en/1.9/ref/settings/#use-l10n

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM