2012-05-01 2 views
1

나는 동일한 이름을 공유하는 2 개의 다른 템플릿 태그 인 the_template_tag를 가지고 있습니다.동일한 이름을 가진 두 templatetag를 구별 할 수있는 방법이 있습니까?

두 템플릿 태그를 구별 할 수있는 방법이 있습니까? "source1.the_template_tag"및 "source2.the_template_tag"같은 것이 있습니까?

내 경우입니다. django-timezones을 사용하고 있습니다. 기본적으로 클라이언트 로컬 시간에 날짜를 표시 할 수있는 localtime이라는 templatetag가 있습니다.

{% load timezone_filters %} 
... some more code 
"user_localtime": "{{ serverdate|localtime:user_timezone }}", 

또한 나는 장고 1.4의 새로운 시간대를 사용하고 있습니다. 클라이언트 로컬 시간 (django-timezone)을 사용해야 할 때 문제가 발생하기 시작합니다. 기본적으로 나는 장고의 시간대를 꺼야한다.

{% load tz %} 
... some more code 
{% localtime off %} 

그러나 templatetag는 동일하다. 당신은 두 가지 옵션이

{% load tz %} 
{% load timezone_filters %} 
... some more code 
{% localtime off %} 
"user_localtime": "{{ serverdate|localtime:user.user_timezone }}", 
+0

질문을 원래 버전으로 되 돌렸습니다. 답변을 수락 한 후에는 질문을 변경하면 안됩니다. 특히 새로운 질문이 완전히 다르기 때문에. 새로운 질문을하고이 질문을 링크로 참조 할 수 있습니다. –

답변

2

: 나는 모두를 사용하려고하면 다음 물론, 오류가 발생합니다 장고의 시간대 기능을

  1. 정지 장고-시간대를 사용 및 사용 1.4

  2. django-timezones를 사용해야하는 경우 소스를 편집하고 태그의 이름을 바꿉니다.

나는 # 1을 강력히 권장하며 # 2를 강력하게 권장하지 않습니다.

+0

감사합니다. 나는 첫 번째 시도했지만 내가 가진 문제는 날짜가 항상 서버 시간대와 함께 표시됩니다. 어쩌면 내가 클라이언트 타임 존 상단의 날짜를 "현지화"하는 방식에 뭔가 잘못되어있을 수도 있습니다. 나는 이것을 연구 할 것이다. –

+0

[timezone support] (https://docs.djangoproject.com/en/dev/topics/i18n/timezones/) 문서를 확인하십시오. 하나는 사용하도록 설정해야합니다. –

+0

나는 그것을 지금 얻었다. [timezone.activate (client_timezone)] (https://docs.djangoproject.com/en/dev/topics/i18n/timezones/#selecting-the-current-time-zone)을 사용하여 시간대를 활성화해야했습니다. 내 오류는 [astimezone] (http://docs.python.org/library/datetime.html#datetime.datetime.astimezone)과 같은 함수를 사용하여 클라이언트 시간대로 변환하려고 시도한 것이 었습니다. –

관련 문제