突然makoが古いバージョンのテンプレートを使用している場合、この問題が定期的に発生します。手動でテンプレートファイルを更新して初めて、現在のバージョンが使用されます。使っています
./manage.py runserver
通常、ソース管理を使用して更新した後だと思いますが、断続的であり、問題を確実に再現することはできません。
キャッシングが行われているような気がします。プロセスについて具体的な説明をしないので、それ以上深く掘り下げることは困難です。
settings.py ファイルでは、MAKO_TEMPLATE_OPTS 設定を使用して、一時的にコンパイルされたテンプレートの場所を指定できます。
import os
import tempfile
MAKO_TEMPLATE_OPTS=dict(input_encoding='utf-8',
module_directory=os.path.join(
tempfile.gettempdir(),
os.environ.get('LOGNAME', 'unknown_user'),
'mako'))
これにより、 /tmp/dsmith/mako のような場所に配置されます
プロジェクトごとに異なるフォルダーを使用して、プロジェクトが重複しないようにすることができます。また、ソース管理の更新などの後で問題に気付いた場合は、キャッシュされたフォルダーをクリアできます。