Mam L10N z powodzeniem skonfigurowany w moim projekcie i jestem w stanie przetłumaczyć daty na prawidłowy format. Ale teraz potrzebuję SHORT_DATE_FORMAT
dla bieżącego ustawienia narodowego w szablonach lub w procesorze kontekstowym.Jak uzyskać aktualny "short_date_format" lokalizacji na django?
Zawsze otrzymuję od domyślnej wartości m/d/Y
. Ustawienia regionalne były obecnie ustawione na pt_BR
, więc format powinien być w formacie d/m/Y
.
In [42]: settings.LANGUAGE_CODE
Out[42]: 'pt-br'
In [43]: settings.USE_L10N
Out[43]: True
In [44]: settings.SHORT_DATE_FORMAT
Out[44]: 'm/d/Y'
Jakieś wskazówki?
Nawiasem mówiąc, naprawdę próbuję to zrobić: pobrać bieżący format ustawień regionalnych, aby móc przekazać go do wtyczki bootstrap-datepicker. Obecnie korzysta z m/d/Y
, a django podaje datę w formacie d/m/Y
.
Używasz ustawienia LANGUAGE_CODE z modułu ustawień, co sprawia, że nie jest on dynamiczny (jest to domyślny kod języka używany, gdy Django nie może go określić w inny sposób). W widoku możesz użyć request.LANGUAGE_CODE. W przeciwnym razie django.utils.translation.get_language() – bambata