カスタムテンプレートタグまたはフィルターをインタラクティブシェルにインポートして、すべてが正常に機能しているかどうかを確認するにはどうすればよいですか?
2台のマシンの動作が異なり、デバッグを行う方法がわかりません。
実稼働マシンでテンプレートフィルターをロードできません。「テンプレートライブラリが見つかりません」というエラーが表示されます。ローカルマシンでは、すべてが正常に機能します。
カスタムテンプレートタグまたはフィルターをインタラクティブシェルにインポートして、すべてが正常に機能しているかどうかを確認するにはどうすればよいですか?
2台のマシンの動作が異なり、デバッグを行う方法がわかりません。
実稼働マシンでテンプレートフィルターをロードできません。「テンプレートライブラリが見つかりません」というエラーが表示されます。ローカルマシンでは、すべてが正常に機能します。
次のようなフィルターのインポート:
from django.template import defaultfilters as filters
filters.date( date.today() )
デフォルトのフィルターの代わりに、カスタムフィルターをインポートする必要があります。
from myApp.templatetags import poll_extras
poll_extras.cut( 'ello' )
本番サーバーにインストールされているアプリの設定を再確認してください。
__init__.py
タイプミス、欠落している問題、またはマスクされていることが心配な場合はImportError
、関数をインポートするだけで済みます。次の構造を想定しています。
foo
├── bar
│ ├── __init__.py
│ ├── models.py
│ ├── static
│ │ └── ..
│ ├── templates
│ │ └── ..
│ ├── templatetags
│ │ ├── __init__.py
│ │ └── baz.py
│ ├── views.py
├── manage.py
└── foo
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
および次の内容baz.py
:
from django import template
register = template.Library()
@register.filter
def capitalize(value):
return value.capitalize()
あなたはただ走るでしょう
>>> from bar.templatetags import baz
>>> print baz.capitalize('test')
'test'