Flaskアプリケーションのすべてのページにデフォルトのページタイトルを設定しようとしています。
これをデフォルトのレイアウトテンプレートに挿入したいと思います。設定にサイト名があります。
<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}}
これは近いものです。タイトルを設定するか、デフォルトでオーバーライドしたいのですが、これが最初のステップです。