3

カスタムテンプレートタグまたはフィルターをインタラクティブシェルにインポートして、すべてが正常に機能しているかどうかを確認するにはどうすればよいですか?

2台のマシンの動作が異なり、デバッグを行う方法がわかりません。

実稼働マシンでテンプレートフィルターをロードできません。「テンプレートライブラリが見つかりません」というエラーが表示されます。ローカルマシンでは、すべてが正常に機能します。

4

2 に答える 2

6

次のようなフィルターのインポート:

from django.template import defaultfilters as filters
filters.date( date.today() )

デフォルトのフィルターの代わりに、カスタムフィルターをインポートする必要があります。

from myApp.templatetags import poll_extras
poll_extras.cut( 'ello' )

本番サーバーにインストールされているアプリの設定を再確認してください。

于 2012-08-20T14:10:22.773 に答える
3

__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'
于 2012-08-20T14:10:56.047 に答える