1

Makoの継承機能を使用して、ヘッダーやフッターなどの一般的なページ要素を「base.mako」テンプレートに除外しています。ページ固有のコントローラーは、base.makoを継承する独自のテンプレートを使用します。

base.makoには一連の変数が必要です。たとえば、ログオンしたユーザーの名前がす​​べてのページのヘッダーに表示されます。ただし、テンプレートを選択してレンダリングするのは個々のページコントローラであるため、変数をテンプレートに渡す必要があります。

むしろ、これらのページコントローラのすべてが、ベーステンプレートがそのコンテキストで何を必要としているかを知る必要がないようにしたいと思います。このような状況でベーステンプレートのコンテキストを確立するための良い方法は何ですか?

前もって感謝します!

4

1 に答える 1

0

ページコントローラには2つのオブジェクト指向デザインの選択肢があります。

一般的な機能は2つの方法で処理できます。

  • 継承。すべてのページコントローラは、共通の属性を提供する共通のクラスのサブクラスです。

  • 委任。すべてのページコントローラーはパイプラインの一部であり、いくつかの一般的なプロセス(ページコントローラーの前または後)が追加情報に組み込まれます。

あなたは1つを選ぶ必要があります。

于 2009-12-02T02:21:18.327 に答える