2012-05-01 8 views
1

同じ名前を持つ2つのテンプレートタグ:the_template_tagがあります。同じ名前の2つのテンプレートタグを区別する方法はありますか?

2つのテンプレートタグを区別する方法はありますか? "source1.the_template_tag"と "source2.the_template_tag"のようなものはありますか?

私の場合です。私はdjango-timezonesを使用しています。 localtimeと呼ばれるtemplatetagがあります。これは、基本的に私がクライアントの現地時間で日付を表示することを可能にします。

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

また、私はDjango 1.4の新しいタイムゾーンを使用しています。クライアントのローカルタイム(django-timezone)を使用する必要がある場合は、問題が発生します。基本的には、私はdjangoのタイムゾーンをオフにする必要があります:

{% 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

あなたは2つのオプションがあります。ジャンゴ・タイムゾーンを使用して

  1. 停止をとDjango 1.4

  2. のタイムゾーン機能を使用します
  3. django-timezonesを使用する必要がある場合は、ソースを編集してタグの名前を変更してください。

#1を強くお勧めします。#2を強く推奨します。

+0

ありがとうBurhan。私は最初のものを試しましたが、問題はサーバーのタイムゾーンで日付が常に表示されることです。たぶん私はクライアントのタイムゾーンの上に日付を "ローカライズ"する方法で何か間違っていると思います。私はこれについて研究します。 –

+0

[timezone support](https://docs.djangoproject.com/ja/dev/topics/i18n/timezones/)ドキュメントを必ず確認してください。 1つは、有効にする必要があります。 –

+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)のような関数を使用しようとしていました。 –

関連する問題