3
플라스크 응용 프로그램에서 모든 페이지의 기본 페이지 제목을 설정하려고합니다.Jinja2 기본 페이지 제목
기본 레이아웃 템플릿에 삽입하고 싶습니다. 내 설정에 사이트 이름이 있습니다.
<title>{{title}}</title}}
문제는 설정에서 레이아웃 템플릿으로 사이트 이름을 가져올 수없는 것입니다.
<title>{{settings.SETTING}}</title}}
및 이와 유사한 변형이 적용되지 않습니다.
쉬운 방법이 있습니다. 내 컨트롤러의 모든 동작과 함께 제목을 설정하지 않아도되며 논리적 인 방법은 내 설정에서 템플릿으로 이동하는 것입니다. 나는 지금 어떤 길을 찾지 못했다.
편집 :
내가 확장 쓰기, 내가 템플릿에 변수를 끌어 확장을 사용하지만, 전체 확장을 쓰고 내 응용 프로그램의 다른 부분을보고하지 않으려는 내 시간 투자를 넘어 비트가 그때.
편집 :
템플릿def page_title(title):
return settings.SITE_NAME
app.jinja_env.filters['page_title'] = page_title
:
뭔가 가까이{{ title | page_title}}
, 난 제목을 설정 또는 기본값 대체하려면 그리고 그
좋은 시작입니다. 내 자신의 솔루션보다 더 좋아하지만 '설정'에 액세스 할 수 없다는 문제가있어서 오류가 발생합니다. 즉 원래의 문제입니다. 설정 -> 템플릿에서 읽을 수 없습니다. – blueblank
아, 템플릿에'config'로 사용할 수있는 app.config를 사용하고 싶습니다. 그렇지 않으면 서식 파일 컨텍스트에'settings'을 추가해야합니다 : http://flask.pocoo.org/docs/templating/#context-processors – ThiefMaster
{{config [ 'NAME']}}을 이게 내가 지금 이걸로 갈거야 그래서 작동합니다. – blueblank