次を使用してテンプレートにサイト名をロードしたいと思います。
{{ SITE_NAME }}
私setting.py
が持っている:
SITE_NAME = "MySite"
と
from django.conf.global_settings import TEMPLATE_CONTEXT_PROCESSORS as TCP
TEMPLATE_CONTEXT_PROCESSORS = TCP + (
'django.core.context_processors.request',
)
また、クラスベースのビューを使用してビューをロードしています ( views.py
):
from django.views.generic import TemplateView
class MenuNavMixin(object):
def get_context_data(self, **kwargs):
context = super(MenuNavMixin, self).get_context_data(**kwargs)
return context
class AboutView(MenuNavMixin, TemplateView):
template_name = "home/about.html"
urls.py
:
url(r'^about/$', AboutView.as_view(), name='about'),
次のようにコンテキスト変数に具体的に追加SITE_NAME
しない限り、アクセスできません。home/about.html
import mywebsite.settings
class MenuNavMixin(object):
def get_context_data(self, **kwargs):
context = super(MenuNavMixin, self).get_context_data(**kwargs)
context['SITE_NAME'] = mywebsite.settings.SITE_NAME
return context
私が使用した場合、これは当てはまらないと思いました:
TEMPLATE_CONTEXT_PROCESSORS = TCP + (
'django.core.context_processors.request',
)
誰かが私を正しい方向に向けることができますか?