Django TemplateSyntaxError: 'xxx' is not a registered tag library. Must be one of:


Django の TemplateSyntaxError が発生しました。
アプリケーションの templatetags 配下の filter や、tag がなんらかの理由で参照できていないという
エラーですが、結構どうしようもない理由で参照できなかったので、
記載しておきます。


前提

  • OS について

    cat /etc/redhat-release
    -------------------------------
    CentOS release 6.9 (Final)
    -------------------------------
    

  • python の version

    python2.7 -V
    -------------------------------
    Python 2.7.8
    -------------------------------
    

  • Django の version

    pip list | grep Django
    -------------------------------
    Django (1.10.6)
    -------------------------------
    


参考サイト


原因

原因は基本的に以下かと。。

  • templatetags ディレクトリ内にpython ファイルを配置していない。

  • INSTALLED_APPS にアプリケーションを追加し忘れている。

  • settings.py の TEMPLATES に対象のテンプレートタグを追加し忘れている。

私は、__init__.py は配置してなくて、このエラーが出ていました。
超基本的なアレですが、同じエラーでるんですね。。

以上です。

コメント