多くのアプリケーションを含むdjangoプロジェクトがあります。今、私はいくつかの変数をコンテキスト辞書に追加する必要があります.Djangoはこれを達成するためのオプションを提供していますか? デコレータが役立つことは知っています.自動的に実行されるが特定のアプリケーションに対してのみ実行されるミドルウェア/コンテキストプロセッサなど、他の方法はありますか.
1 に答える
1
このようなコンテキスト プロセッサは、必要なことを行うことができます。
from django.core.urlresolvers import resolve
def app_var(request):
if resolve(request.path).app_name == 'YOUR_APP_NAME':
return {'CUSTOM_VAR': 'VALUE'}
return {}
コンテキスト プロセッサをインストールするには、任意のファイルにコードを配置し、それを参照するエントリ (例: 'folder.file.app_var'
)CONTEXT_PROCESSORS
をsettings.py
.
于 2012-08-29T12:25:02.160 に答える